Commit 084d415d authored by Arnd Bergmann's avatar Arnd Bergmann

Merge tag 'stm32-dt-for-v6.8-1' of...

Merge tag 'stm32-dt-for-v6.8-1' of git://git.kernel.org/pub/scm/linux/kernel/git/atorgue/stm32 into soc/dt

STM32 DT for v6.8, round 1

Highlights:
----------

- MCU:
  -  Add SPI support on STM32F746.
  -  Better describe vcc_3v3 for SD and DSI on stm32f469-disco.

- MPU:
  - STM32MP13:
    - Add DCMIPP (Digital Camera Memory Interface Piwel Processor)  on STM32MP135.

  - STMP32MP15:
    - Change "phys" affectation from board to Soc dtsi file for USB host as it is hard  linked
      to the port 0 of usbphyc.
    - Fix SCMI and No-SCMI compatible in boards.

  - STM32MP25:
    - Add BSEC support to read the device part number OTP and the package data register OTP.

* tag 'stm32-dt-for-v6.8-1' of git://git.kernel.org/pub/scm/linux/kernel/git/atorgue/stm32:
  ARM: dts: stm32: add dcmipp support to stm32mp135
  arm64: dts: st: add bsec support to stm32mp25
  ARM: dts: stm32: Consolidate usbh_[eo]hci phy properties on stm32mp15
  ARM: dts: stm32: don't mix SCMI and non-SCMI board compatibles
  dt-bindings: arm: stm32: don't mix SCMI and non-SCMI board compatibles
  ARM: dts: stm32: minor whitespace cleanup around '='
  ARM: dts: stm32: add SPI support on STM32F746
  ARM: dts: stm32: add STM32F746 syscfg clock
  ARM: dts: stm32: use the same 3v3 for SD and DSI nodes on stm32f469-disco

Link: https://lore.kernel.org/r/9363227b-1c44-4a20-b245-efbbbf9ab1dd@foss.st.comSigned-off-by: default avatarArnd Bergmann <arnd@arndb.de>
parents e0a220a3 2de1bb18
...@@ -82,29 +82,19 @@ properties: ...@@ -82,29 +82,19 @@ properties:
- shiratech,stm32mp157a-iot-box # IoT Box - shiratech,stm32mp157a-iot-box # IoT Box
- shiratech,stm32mp157a-stinger96 # Stinger96 - shiratech,stm32mp157a-stinger96 # Stinger96
- st,stm32mp157c-ed1 - st,stm32mp157c-ed1
- st,stm32mp157c-ed1-scmi
- st,stm32mp157a-dk1 - st,stm32mp157a-dk1
- st,stm32mp157a-dk1-scmi
- st,stm32mp157c-dk2 - st,stm32mp157c-dk2
- st,stm32mp157c-dk2-scmi
- const: st,stm32mp157 - const: st,stm32mp157
- items:
- const: st,stm32mp157a-dk1-scmi
- const: st,stm32mp157a-dk1
- const: st,stm32mp157
- items:
- const: st,stm32mp157c-dk2-scmi
- const: st,stm32mp157c-dk2
- const: st,stm32mp157
- items:
- const: st,stm32mp157c-ed1-scmi
- const: st,stm32mp157c-ed1
- const: st,stm32mp157
- items: - items:
- const: st,stm32mp157c-ev1 - const: st,stm32mp157c-ev1
- const: st,stm32mp157c-ed1 - const: st,stm32mp157c-ed1
- const: st,stm32mp157 - const: st,stm32mp157
- items: - items:
- const: st,stm32mp157c-ev1-scmi - const: st,stm32mp157c-ev1-scmi
- const: st,stm32mp157c-ev1
- const: st,stm32mp157c-ed1 - const: st,stm32mp157c-ed1
- const: st,stm32mp157 - const: st,stm32mp157
......
...@@ -69,16 +69,9 @@ aliases { ...@@ -69,16 +69,9 @@ aliases {
serial0 = &usart3; serial0 = &usart3;
}; };
mmc_vcard: mmc_vcard { vcc_3v3: vcc-3v3 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
regulator-name = "mmc_vcard"; regulator-name = "vcc_3v3";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
};
vdd_dsi: vdd-dsi {
compatible = "regulator-fixed";
regulator-name = "vdd_dsi";
regulator-min-microvolt = <3300000>; regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>; regulator-max-microvolt = <3300000>;
}; };
...@@ -164,7 +157,7 @@ panel@0 { ...@@ -164,7 +157,7 @@ panel@0 {
compatible = "orisetech,otm8009a"; compatible = "orisetech,otm8009a";
reg = <0>; /* dsi virtual channel (0..3) */ reg = <0>; /* dsi virtual channel (0..3) */
reset-gpios = <&gpioh 7 GPIO_ACTIVE_LOW>; reset-gpios = <&gpioh 7 GPIO_ACTIVE_LOW>;
power-supply = <&vdd_dsi>; power-supply = <&vcc_3v3>;
status = "okay"; status = "okay";
port { port {
...@@ -219,7 +212,7 @@ timer@2 { ...@@ -219,7 +212,7 @@ timer@2 {
&sdio { &sdio {
status = "okay"; status = "okay";
vmmc-supply = <&mmc_vcard>; vmmc-supply = <&vcc_3v3>;
cd-gpios = <&gpiog 2 GPIO_ACTIVE_LOW>; cd-gpios = <&gpiog 2 GPIO_ACTIVE_LOW>;
broken-cd; broken-cd;
pinctrl-names = "default", "opendrain"; pinctrl-names = "default", "opendrain";
......
...@@ -274,6 +274,26 @@ gcan3: gcan@40003600 { ...@@ -274,6 +274,26 @@ gcan3: gcan@40003600 {
clocks = <&rcc 0 STM32F7_APB1_CLOCK(CAN3)>; clocks = <&rcc 0 STM32F7_APB1_CLOCK(CAN3)>;
}; };
spi2: spi@40003800 {
#address-cells = <1>;
#size-cells = <0>;
compatible = "st,stm32f7-spi";
reg = <0x40003800 0x400>;
interrupts = <36>;
clocks = <&rcc 0 STM32F7_APB1_CLOCK(SPI2)>;
status = "disabled";
};
spi3: spi@40003c00 {
#address-cells = <1>;
#size-cells = <0>;
compatible = "st,stm32f7-spi";
reg = <0x40003c00 0x400>;
interrupts = <51>;
clocks = <&rcc 0 STM32F7_APB1_CLOCK(SPI3)>;
status = "disabled";
};
usart2: serial@40004400 { usart2: serial@40004400 {
compatible = "st,stm32f7-uart"; compatible = "st,stm32f7-uart";
reg = <0x40004400 0x400>; reg = <0x40004400 0x400>;
...@@ -491,9 +511,30 @@ sdio1: mmc@40012c00 { ...@@ -491,9 +511,30 @@ sdio1: mmc@40012c00 {
status = "disabled"; status = "disabled";
}; };
spi1: spi@40013000 {
#address-cells = <1>;
#size-cells = <0>;
compatible = "st,stm32f7-spi";
reg = <0x40013000 0x400>;
interrupts = <35>;
clocks = <&rcc 0 STM32F7_APB2_CLOCK(SPI1)>;
status = "disabled";
};
spi4: spi@40013400 {
#address-cells = <1>;
#size-cells = <0>;
compatible = "st,stm32f7-spi";
reg = <0x40013400 0x400>;
interrupts = <84>;
clocks = <&rcc 0 STM32F7_APB2_CLOCK(SPI4)>;
status = "disabled";
};
syscfg: syscon@40013800 { syscfg: syscon@40013800 {
compatible = "st,stm32-syscfg", "syscon"; compatible = "st,stm32-syscfg", "syscon";
reg = <0x40013800 0x400>; reg = <0x40013800 0x400>;
clocks = <&rcc 0 STM32F7_APB2_CLOCK(SYSCFG)>;
}; };
exti: interrupt-controller@40013c00 { exti: interrupt-controller@40013c00 {
...@@ -554,6 +595,26 @@ pwm { ...@@ -554,6 +595,26 @@ pwm {
}; };
}; };
spi5: spi@40015000 {
#address-cells = <1>;
#size-cells = <0>;
compatible = "st,stm32f7-spi";
reg = <0x40015000 0x400>;
interrupts = <85>;
clocks = <&rcc 0 STM32F7_APB2_CLOCK(SPI5)>;
status = "disabled";
};
spi6: spi@40015400 {
#address-cells = <1>;
#size-cells = <0>;
compatible = "st,stm32f7-spi";
reg = <0x40015400 0x400>;
interrupts = <86>;
clocks = <&rcc 0 STM32F7_APB2_CLOCK(SPI6)>;
status = "disabled";
};
ltdc: display-controller@40016800 { ltdc: display-controller@40016800 {
compatible = "st,stm32-ltdc"; compatible = "st,stm32-ltdc";
reg = <0x40016800 0x200>; reg = <0x40016800 0x200>;
......
...@@ -8,5 +8,16 @@ ...@@ -8,5 +8,16 @@
/ { / {
soc { soc {
dcmipp: dcmipp@5a000000 {
compatible = "st,stm32mp13-dcmipp";
reg = <0x5a000000 0x400>;
interrupts = <GIC_SPI 79 IRQ_TYPE_LEVEL_HIGH>;
resets = <&rcc DCMIPP_R>;
clocks = <&rcc DCMIPP_K>;
status = "disabled";
port {
};
};
}; };
}; };
...@@ -1521,6 +1521,8 @@ usbh_ohci: usb@5800c000 { ...@@ -1521,6 +1521,8 @@ usbh_ohci: usb@5800c000 {
clocks = <&usbphyc>, <&rcc USBH>; clocks = <&usbphyc>, <&rcc USBH>;
resets = <&rcc USBH_R>; resets = <&rcc USBH_R>;
interrupts = <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>; interrupts = <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>;
phys = <&usbphyc_port0>;
phy-names = "usb";
status = "disabled"; status = "disabled";
}; };
...@@ -1531,6 +1533,8 @@ usbh_ehci: usb@5800d000 { ...@@ -1531,6 +1533,8 @@ usbh_ehci: usb@5800d000 {
resets = <&rcc USBH_R>; resets = <&rcc USBH_R>;
interrupts = <GIC_SPI 75 IRQ_TYPE_LEVEL_HIGH>; interrupts = <GIC_SPI 75 IRQ_TYPE_LEVEL_HIGH>;
companion = <&usbh_ohci>; companion = <&usbh_ohci>;
phys = <&usbphyc_port0>;
phy-names = "usb";
status = "disabled"; status = "disabled";
}; };
......
...@@ -206,8 +206,6 @@ pins { ...@@ -206,8 +206,6 @@ pins {
}; };
&usbh_ehci { &usbh_ehci {
phys = <&usbphyc_port0>;
phy-names = "usb";
status = "okay"; status = "okay";
}; };
......
...@@ -11,7 +11,7 @@ ...@@ -11,7 +11,7 @@
/ { / {
model = "STMicroelectronics STM32MP157A-DK1 SCMI Discovery Board"; model = "STMicroelectronics STM32MP157A-DK1 SCMI Discovery Board";
compatible = "st,stm32mp157a-dk1-scmi", "st,stm32mp157a-dk1", "st,stm32mp157"; compatible = "st,stm32mp157a-dk1-scmi", "st,stm32mp157";
reserved-memory { reserved-memory {
optee@de000000 { optee@de000000 {
......
...@@ -313,8 +313,6 @@ &uart7 { ...@@ -313,8 +313,6 @@ &uart7 {
}; };
&usbh_ehci { &usbh_ehci {
phys = <&usbphyc_port0>;
phy-names = "usb";
status = "okay"; status = "okay";
}; };
......
...@@ -11,7 +11,7 @@ ...@@ -11,7 +11,7 @@
/ { / {
model = "STMicroelectronics STM32MP157C-DK2 SCMI Discovery Board"; model = "STMicroelectronics STM32MP157C-DK2 SCMI Discovery Board";
compatible = "st,stm32mp157c-dk2-scmi", "st,stm32mp157c-dk2", "st,stm32mp157"; compatible = "st,stm32mp157c-dk2-scmi", "st,stm32mp157";
reserved-memory { reserved-memory {
optee@de000000 { optee@de000000 {
......
...@@ -11,7 +11,7 @@ ...@@ -11,7 +11,7 @@
/ { / {
model = "STMicroelectronics STM32MP157C-ED1 SCMI eval daughter"; model = "STMicroelectronics STM32MP157C-ED1 SCMI eval daughter";
compatible = "st,stm32mp157c-ed1-scmi", "st,stm32mp157c-ed1", "st,stm32mp157"; compatible = "st,stm32mp157c-ed1-scmi", "st,stm32mp157";
reserved-memory { reserved-memory {
optee@fe000000 { optee@fe000000 {
......
...@@ -500,14 +500,10 @@ &usart3 { ...@@ -500,14 +500,10 @@ &usart3 {
}; };
&usbh_ehci { &usbh_ehci {
phys = <&usbphyc_port0>;
phy-names = "usb";
status = "okay"; status = "okay";
}; };
&usbh_ohci { &usbh_ohci {
phys = <&usbphyc_port0>;
phy-names = "usb";
status = "okay"; status = "okay";
}; };
......
...@@ -11,8 +11,7 @@ ...@@ -11,8 +11,7 @@
/ { / {
model = "STMicroelectronics STM32MP157C-EV1 SCMI eval daughter on eval mother"; model = "STMicroelectronics STM32MP157C-EV1 SCMI eval daughter on eval mother";
compatible = "st,stm32mp157c-ev1-scmi", "st,stm32mp157c-ev1", "st,stm32mp157c-ed1", compatible = "st,stm32mp157c-ev1-scmi", "st,stm32mp157c-ed1", "st,stm32mp157";
"st,stm32mp157";
reserved-memory { reserved-memory {
optee@fe000000 { optee@fe000000 {
......
...@@ -362,7 +362,6 @@ &usart3 { ...@@ -362,7 +362,6 @@ &usart3 {
}; };
&usbh_ehci { &usbh_ehci {
phys = <&usbphyc_port0>;
status = "okay"; status = "okay";
#address-cells = <1>; #address-cells = <1>;
#size-cells = <0>; #size-cells = <0>;
......
...@@ -197,14 +197,10 @@ &uart4 { ...@@ -197,14 +197,10 @@ &uart4 {
}; };
&usbh_ehci { &usbh_ehci {
phys = <&usbphyc_port0>;
phy-names = "usb";
status = "okay"; status = "okay";
}; };
&usbh_ohci { &usbh_ohci {
phys = <&usbphyc_port0>;
phy-names = "usb";
status = "okay"; status = "okay";
}; };
......
...@@ -547,14 +547,10 @@ &usart3 { ...@@ -547,14 +547,10 @@ &usart3 {
}; };
&usbh_ehci { &usbh_ehci {
phys = <&usbphyc_port0>;
phy-names = "usb";
status = "okay"; status = "okay";
}; };
&usbh_ohci { &usbh_ohci {
phys = <&usbphyc_port0>;
phy-names = "usb";
status = "okay"; status = "okay";
}; };
......
...@@ -567,9 +567,6 @@ &usart3 { ...@@ -567,9 +567,6 @@ &usart3 {
}; };
&usbh_ehci { &usbh_ehci {
phys = <&usbphyc_port0>;
phy-names = "usb";
status = "okay"; status = "okay";
}; };
......
...@@ -152,7 +152,6 @@ &uart8 { /* RS485 */ ...@@ -152,7 +152,6 @@ &uart8 { /* RS485 */
}; };
&usbh_ehci { &usbh_ehci {
phys = <&usbphyc_port0>;
status = "okay"; status = "okay";
}; };
......
...@@ -305,7 +305,6 @@ &uart8 { ...@@ -305,7 +305,6 @@ &uart8 {
}; };
&usbh_ehci { &usbh_ehci {
phys = <&usbphyc_port0>;
status = "okay"; status = "okay";
}; };
......
...@@ -119,12 +119,10 @@ &uart8 { ...@@ -119,12 +119,10 @@ &uart8 {
}; };
&usbh_ehci { &usbh_ehci {
phys = <&usbphyc_port0>;
status = "okay"; status = "okay";
}; };
&usbh_ohci { &usbh_ohci {
phys = <&usbphyc_port0>;
status = "okay"; status = "okay";
}; };
......
...@@ -489,8 +489,6 @@ bluetooth { ...@@ -489,8 +489,6 @@ bluetooth {
}; };
&usbh_ehci { &usbh_ehci {
phys = <&usbphyc_port0>;
phy-names = "usb";
status = "okay"; status = "okay";
}; };
......
...@@ -312,12 +312,10 @@ &usart3 { /* RS485 or RS232 */ ...@@ -312,12 +312,10 @@ &usart3 { /* RS485 or RS232 */
}; };
&usbh_ehci { &usbh_ehci {
phys = <&usbphyc_port0>;
status = "okay"; status = "okay";
}; };
&usbh_ohci { &usbh_ohci {
phys = <&usbphyc_port0>;
status = "okay"; status = "okay";
}; };
......
...@@ -168,12 +168,10 @@ &uart7 { ...@@ -168,12 +168,10 @@ &uart7 {
}; };
&usbh_ehci { &usbh_ehci {
phys = <&usbphyc_port0>;
status = "okay"; status = "okay";
}; };
&usbh_ohci { &usbh_ohci {
phys = <&usbphyc_port0>;
status = "okay"; status = "okay";
}; };
......
...@@ -680,7 +680,6 @@ &usart3 { ...@@ -680,7 +680,6 @@ &usart3 {
}; };
&usbh_ehci { &usbh_ehci {
phys = <&usbphyc_port0>;
status = "okay"; status = "okay";
#address-cells = <1>; #address-cells = <1>;
#size-cells = <0>; #size-cells = <0>;
......
...@@ -140,6 +140,22 @@ sdmmc1: mmc@48220000 { ...@@ -140,6 +140,22 @@ sdmmc1: mmc@48220000 {
}; };
}; };
bsec: efuse@44000000 {
compatible = "st,stm32mp25-bsec";
reg = <0x44000000 0x1000>;
#address-cells = <1>;
#size-cells = <1>;
part_number_otp@24 {
reg = <0x24 0x4>;
};
package_otp@1e8 {
reg = <0x1e8 0x1>;
bits = <0 3>;
};
};
syscfg: syscon@44230000 { syscfg: syscon@44230000 {
compatible = "st,stm32mp25-syscfg", "syscon"; compatible = "st,stm32mp25-syscfg", "syscon";
reg = <0x44230000 0x10000>; reg = <0x44230000 0x10000>;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment