1 // SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause)
3 * Copyright (C) 2019 Marek Vasut <marex@denx.de>
7 #include "stm32mp157.dtsi"
8 #include "stm32mp15xc.dtsi"
9 #include "stm32mp15-pinctrl.dtsi"
10 #include "stm32mp15xxaa-pinctrl.dtsi"
11 #include <dt-bindings/gpio/gpio.h>
12 #include <dt-bindings/mfd/st,stpmic1.h>
17 ethernet0 = ðernet0;
21 device_type = "memory";
22 reg = <0xC0000000 0x40000000>;
25 ethernet_vio: vioregulator {
26 compatible = "regulator-fixed";
27 regulator-name = "vio";
28 regulator-min-microvolt = <3300000>;
29 regulator-max-microvolt = <3300000>;
30 gpio = <&gpiog 3 GPIO_ACTIVE_LOW>;
37 pinctrl-names = "default";
38 pinctrl-0 = <&cec_pins_a>;
44 pinctrl-names = "default", "sleep";
45 pinctrl-0 = <&dcmi_pins_a>;
46 pinctrl-1 = <&dcmi_sleep_pins_a>;
55 pinctrl-0 = <ðernet0_rmii_pins_a>;
56 pinctrl-1 = <ðernet0_rmii_pins_sleep_a>;
57 pinctrl-names = "default", "sleep";
61 phy-reset-gpios = <&gpioh 15 GPIO_ACTIVE_LOW>;
66 compatible = "snps,dwmac-mdio";
68 phy0: ethernet-phy@1 {
75 pinctrl-names = "default";
76 pinctrl-0 = <&i2c2_pins_a>;
77 i2c-scl-rising-time-ns = <185>;
78 i2c-scl-falling-time-ns = <20>;
83 pinctrl-names = "default";
84 pinctrl-0 = <&i2c4_pins_a>;
85 i2c-scl-rising-time-ns = <185>;
86 i2c-scl-falling-time-ns = <20>;
88 /* spare dmas for other usage */
89 /delete-property/dmas;
90 /delete-property/dma-names;
93 compatible = "st,stpmic1";
95 interrupts-extended = <&gpioa 0 IRQ_TYPE_EDGE_FALLING>;
97 #interrupt-cells = <2>;
101 compatible = "st,stpmic1-regulators";
102 ldo1-supply = <&v3v3>;
103 ldo2-supply = <&v3v3>;
104 ldo3-supply = <&vdd_ddr>;
105 ldo5-supply = <&v3v3>;
106 ldo6-supply = <&v3v3>;
107 pwr_sw1-supply = <&bst_out>;
108 pwr_sw2-supply = <&bst_out>;
111 regulator-name = "vddcore";
112 regulator-min-microvolt = <800000>;
113 regulator-max-microvolt = <1350000>;
115 regulator-initial-mode = <0>;
116 regulator-over-current-protection;
120 regulator-name = "vdd_ddr";
121 regulator-min-microvolt = <1350000>;
122 regulator-max-microvolt = <1350000>;
124 regulator-initial-mode = <0>;
125 regulator-over-current-protection;
129 regulator-name = "vdd";
130 regulator-min-microvolt = <3300000>;
131 regulator-max-microvolt = <3300000>;
134 regulator-initial-mode = <0>;
135 regulator-over-current-protection;
139 regulator-name = "v3v3";
140 regulator-min-microvolt = <3300000>;
141 regulator-max-microvolt = <3300000>;
143 regulator-over-current-protection;
144 regulator-initial-mode = <0>;
148 regulator-name = "vdda";
149 regulator-min-microvolt = <2900000>;
150 regulator-max-microvolt = <2900000>;
151 interrupts = <IT_CURLIM_LDO1 0>;
155 regulator-name = "v2v8";
156 regulator-min-microvolt = <2800000>;
157 regulator-max-microvolt = <2800000>;
158 interrupts = <IT_CURLIM_LDO2 0>;
162 regulator-name = "vtt_ddr";
163 regulator-min-microvolt = <500000>;
164 regulator-max-microvolt = <750000>;
166 regulator-over-current-protection;
170 regulator-name = "vdd_usb";
171 regulator-min-microvolt = <3300000>;
172 regulator-max-microvolt = <3300000>;
173 interrupts = <IT_CURLIM_LDO4 0>;
177 regulator-name = "vdd_sd";
178 regulator-min-microvolt = <2900000>;
179 regulator-max-microvolt = <2900000>;
180 interrupts = <IT_CURLIM_LDO5 0>;
185 regulator-name = "v1v8";
186 regulator-min-microvolt = <1800000>;
187 regulator-max-microvolt = <1800000>;
188 interrupts = <IT_CURLIM_LDO6 0>;
192 regulator-name = "vref_ddr";
194 regulator-over-current-protection;
198 regulator-name = "bst_out";
199 interrupts = <IT_OCP_BOOST 0>;
203 regulator-name = "vbus_otg";
204 interrupts = <IT_OCP_OTG 0>;
208 regulator-name = "vbus_sw";
209 interrupts = <IT_OCP_SWOUT 0>;
210 regulator-active-discharge;
215 compatible = "st,stpmic1-onkey";
216 interrupts = <IT_PONKEY_F 0>, <IT_PONKEY_R 0>;
217 interrupt-names = "onkey-falling", "onkey-rising";
218 power-off-time-sec = <10>;
223 compatible = "st,stpmic1-wdt";
229 compatible = "atmel,24c02";
236 pinctrl-names = "default";
237 pinctrl-0 = <&i2c5_pins_a>;
238 i2c-scl-rising-time-ns = <185>;
239 i2c-scl-falling-time-ns = <20>;
253 mboxes = <&ipcc 0>, <&ipcc 1>, <&ipcc 2>;
254 mbox-names = "vq0", "vq1", "shutdown";
260 vdd_3v3_usbfs-supply = <&vdd_usb>;
264 ethernet0_rmii_pins_a: rmii-0 {
266 pinmux = <STM32_PINMUX('G', 13, AF11)>, /* ETH1_RMII_TXD0 */
267 <STM32_PINMUX('G', 14, AF11)>, /* ETH1_RMII_TXD1 */
268 <STM32_PINMUX('B', 11, AF11)>, /* ETH1_RMII_TX_EN */
269 <STM32_PINMUX('A', 1, AF11)>, /* ETH1_RMII_REF_CLK */
270 <STM32_PINMUX('A', 2, AF11)>, /* ETH1_MDIO */
271 <STM32_PINMUX('C', 1, AF11)>; /* ETH1_MDC */
277 pinmux = <STM32_PINMUX('C', 4, AF11)>, /* ETH1_RMII_RXD0 */
278 <STM32_PINMUX('C', 5, AF11)>, /* ETH1_RMII_RXD1 */
279 <STM32_PINMUX('A', 7, AF11)>; /* ETH1_RMII_CRS_DV */
284 ethernet0_rmii_pins_sleep_a: rmii-sleep-0 {
286 pinmux = <STM32_PINMUX('G', 13, ANALOG)>, /* ETH1_RMII_TXD0 */
287 <STM32_PINMUX('G', 14, ANALOG)>, /* ETH1_RMII_TXD1 */
288 <STM32_PINMUX('B', 11, ANALOG)>, /* ETH1_RMII_TX_EN */
289 <STM32_PINMUX('A', 2, ANALOG)>, /* ETH1_MDIO */
290 <STM32_PINMUX('C', 1, ANALOG)>, /* ETH1_MDC */
291 <STM32_PINMUX('C', 4, ANALOG)>, /* ETH1_RMII_RXD0 */
292 <STM32_PINMUX('C', 5, ANALOG)>, /* ETH1_RMII_RXD1 */
293 <STM32_PINMUX('A', 1, ANALOG)>, /* ETH1_RMII_REF_CLK */
294 <STM32_PINMUX('A', 7, ANALOG)>; /* ETH1_RMII_CRS_DV */
300 pinctrl-names = "default", "sleep";
301 pinctrl-0 = <&qspi_clk_pins_a &qspi_bk1_pins_a>;
302 pinctrl-1 = <&qspi_clk_sleep_pins_a &qspi_bk1_sleep_pins_a>;
303 reg = <0x58003000 0x1000>, <0x70000000 0x4000000>;
304 #address-cells = <1>;
308 flash0: mx66l51235l@0 {
309 compatible = "jedec,spi-nor";
311 spi-rx-bus-width = <4>;
312 spi-max-frequency = <108000000>;
313 #address-cells = <1>;
327 pinctrl-names = "default", "opendrain", "sleep";
328 pinctrl-0 = <&sdmmc1_b4_pins_a &sdmmc1_dir_pins_a>;
329 pinctrl-1 = <&sdmmc1_b4_od_pins_a &sdmmc1_dir_pins_a>;
330 pinctrl-2 = <&sdmmc1_b4_sleep_pins_a &sdmmc1_dir_sleep_pins_a>;
331 cd-gpios = <&gpiog 1 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>;
336 vmmc-supply = <&vdd_sd>;
342 * SD bus pull-up resistors:
343 * - optional on SoMs with SD voltage translator
344 * - mandatory on SoMs without SD voltage translator
355 pinctrl-names = "default";
356 pinctrl-0 = <&sdmmc2_b4_pins_a &sdmmc2_d47_pins_a>;
363 vmmc-supply = <&v3v3>;
368 pinctrl-names = "default";
369 pinctrl-0 = <&spi1_pins_a>;
374 /* spare dmas for other usage (un-delete to enable pwm capture) */
375 /delete-property/dmas;
376 /delete-property/dma-names;
379 pinctrl-0 = <&pwm2_pins_a>;
380 pinctrl-names = "default";
390 /* spare dmas for other usage */
391 /delete-property/dmas;
392 /delete-property/dma-names;
399 /delete-property/dmas;
400 /delete-property/dma-names;
403 pinctrl-0 = <&pwm8_pins_a>;
404 pinctrl-names = "default";
413 /delete-property/dmas;
414 /delete-property/dma-names;
417 pinctrl-0 = <&pwm12_pins_a>;
418 pinctrl-names = "default";
427 pinctrl-names = "default";
428 pinctrl-0 = <&uart4_pins_a>;
433 phys = <&usbphyc_port0>;
439 dr_mode = "peripheral";
440 phys = <&usbphyc_port1 0>;
441 phy-names = "usb2-phy";
442 vbus-supply = <&vbus_otg>;
451 phy-supply = <&vdd_usb>;
455 phy-supply = <&vdd_usb>;