1 // SPDX-License-Identifier: (GPL-2.0 or MIT)
3 // Copyright (c) 2021 emtrion GmbH
4 // Author: Reinhold Müller <reinhold.mueller@emtrion.de>.
7 #include "stm32mp157.dtsi"
8 #include "stm32mp15xc.dtsi"
9 #include "stm32mp15-pinctrl.dtsi"
10 #include "stm32mp15xxac-pinctrl.dtsi"
11 #include <dt-bindings/gpio/gpio.h>
12 #include <dt-bindings/mfd/st,stpmic1.h>
16 ethernet0 = ðernet0;
23 stdout-path = "serial0:115200n8";
27 device_type = "memory";
28 reg = <0xc0000000 0x20000000>;
36 mcuram2: mcuram2@10000000 {
37 compatible = "shared-dma-pool";
38 reg = <0x10000000 0x40000>;
42 vdev0vring0: vdev0vring0@10040000 {
43 compatible = "shared-dma-pool";
44 reg = <0x10040000 0x2000>;
48 vdev0vring1: vdev0vring1@10042000 {
49 compatible = "shared-dma-pool";
50 reg = <0x10042000 0x2000>;
54 vdev0buffer: vdev0buffer@10044000 {
55 compatible = "shared-dma-pool";
56 reg = <0x10044000 0x4000>;
60 mcuram: mcuram@30000000 {
61 compatible = "shared-dma-pool";
62 reg = <0x30000000 0x40000>;
66 retram: retram@38000000 {
67 compatible = "shared-dma-pool";
68 reg = <0x38000000 0x10000>;
74 compatible = "gpio-leds";
77 gpios = <&gpioa 13 GPIO_ACTIVE_LOW>;
78 linux,default-trigger = "none";
79 default-state = "off";
84 gpios = <&gpioa 14 GPIO_ACTIVE_LOW>;
85 linux,default-trigger = "heartbeat";
94 vref-supply = <&vrefbuf>;
98 pinctrl-names = "default";
99 pinctrl-0 = <&adc1_in6_pins_a>;
103 st,min-sample-time-ns = <5000>;
108 #address-cells = <1>;
113 label = "sense_temp";
114 st,min-sample-time-ns = <9000>;
119 st,min-sample-time-ns = <9000>;
124 st,min-sample-time-ns = <9000>;
129 st,min-sample-time-ns = <9000>;
143 pinctrl-names = "default";
144 pinctrl-0 = <&dac_ch1_pins_a &dac_ch2_pins_a>;
145 vref-supply = <&vdda>;
162 snps,reset-gpio = <&gpioa 1 GPIO_ACTIVE_LOW>;
163 snps,reset-active-low;
164 snps,reset-delays-us = <0 30000 50000>;
165 pinctrl-0 = <ðernet0_rmii_pins_b>;
166 pinctrl-1 = <ðernet0_rmii_sleep_pins_b>;
167 pinctrl-names = "default", "sleep";
170 phy-handle = <&phy0>;
174 #address-cells = <1>;
176 compatible = "snps,dwmac-mdio";
177 phy0: ethernet-phy@0 {
188 pinctrl-names = "default", "sleep";
189 pinctrl-0 = <&i2c1_pins_a>;
190 pinctrl-1 = <&i2c1_sleep_pins_a>;
191 i2c-scl-rising-time-ns = <100>;
192 i2c-scl-falling-time-ns = <7>;
194 /delete-property/dmas;
195 /delete-property/dma-names;
199 pinctrl-names = "default", "sleep";
200 pinctrl-0 = <&i2c4_pins_a>;
201 pinctrl-1 = <&i2c4_sleep_pins_a>;
202 i2c-scl-rising-time-ns = <185>;
203 i2c-scl-falling-time-ns = <20>;
205 /delete-property/dmas;
206 /delete-property/dma-names;
209 compatible = "st,stpmic1";
211 interrupts-extended = <&gpioa 0 IRQ_TYPE_EDGE_FALLING>;
212 interrupt-controller;
213 #interrupt-cells = <2>;
217 compatible = "st,stpmic1-regulators";
219 ldo1-supply = <&v3v3>;
220 ldo3-supply = <&vdd_ddr>;
221 ldo6-supply = <&v3v3>;
222 pwr_sw1-supply = <&bst_out>;
223 pwr_sw2-supply = <&bst_out>;
226 regulator-name = "vddcore";
227 regulator-min-microvolt = <1200000>;
228 regulator-max-microvolt = <1350000>;
230 regulator-initial-mode = <0>;
231 regulator-over-current-protection;
235 regulator-name = "vdd_ddr";
236 regulator-min-microvolt = <1350000>;
237 regulator-max-microvolt = <1350000>;
239 regulator-initial-mode = <0>;
240 regulator-over-current-protection;
244 regulator-name = "vdd";
245 regulator-min-microvolt = <3300000>;
246 regulator-max-microvolt = <3300000>;
249 regulator-initial-mode = <0>;
250 regulator-over-current-protection;
254 regulator-name = "v3v3";
255 regulator-min-microvolt = <3300000>;
256 regulator-max-microvolt = <3300000>;
258 regulator-over-current-protection;
259 regulator-initial-mode = <0>;
263 regulator-name = "v1v8_audio";
264 regulator-min-microvolt = <1800000>;
265 regulator-max-microvolt = <1800000>;
267 interrupts = <IT_CURLIM_LDO1 0>;
271 regulator-name = "v3v3_hdmi";
272 regulator-min-microvolt = <3300000>;
273 regulator-max-microvolt = <3300000>;
275 interrupts = <IT_CURLIM_LDO2 0>;
279 regulator-name = "vtt_ddr";
280 regulator-min-microvolt = <500000>;
281 regulator-max-microvolt = <750000>;
283 regulator-over-current-protection;
287 regulator-name = "vdd_usb";
288 regulator-min-microvolt = <3300000>;
289 regulator-max-microvolt = <3300000>;
290 interrupts = <IT_CURLIM_LDO4 0>;
294 regulator-name = "vdd_sd";
295 regulator-min-microvolt = <3300000>;
296 regulator-max-microvolt = <3300000>;
297 interrupts = <IT_CURLIM_LDO5 0>;
302 regulator-name = "vdda";
303 regulator-min-microvolt = <2900000>;
304 regulator-max-microvolt = <2900000>;
306 interrupts = <IT_CURLIM_LDO6 0>;
311 regulator-name = "vref_ddr";
313 regulator-over-current-protection;
317 regulator-name = "bst_out";
318 interrupts = <IT_OCP_BOOST 0>;
322 regulator-name = "vbus_otg";
323 interrupts = <IT_OCP_OTG 0>;
324 regulator-active-discharge;
328 regulator-name = "usbh_vbus";
329 interrupts = <IT_OCP_SWOUT 0>;
336 compatible = "st,stpmic1-onkey";
337 interrupts = <IT_PONKEY_F 0>, <IT_PONKEY_R 1>;
338 interrupt-names = "onkey-falling", "onkey-rising";
343 compatible = "st,stpmic1-wdt";
350 pinctrl-names = "default", "sleep";
351 pinctrl-0 = <&i2c5_pins_a>;
352 pinctrl-1 = <&i2c5_sleep_pins_a>;
353 i2c-scl-rising-time-ns = <185>;
354 i2c-scl-falling-time-ns = <20>;
355 /delete-property/dmas;
356 /delete-property/dma-names;
369 memory-region = <&retram>, <&mcuram>, <&mcuram2>, <&vdev0vring0>,
370 <&vdev0vring1>, <&vdev0buffer>;
371 mboxes = <&ipcc 0>, <&ipcc 1>, <&ipcc 2>, <&ipcc 3>;
372 mbox-names = "vq0", "vq1", "shutdown", "detach";
373 interrupt-parent = <&exti>;
375 interrupt-names = "wdg";
382 vdd_3v3_usbfs-supply = <&vdd_usb>;
386 pinctrl-names = "default", "sleep";
387 pinctrl-0 = <&qspi_clk_pins_a
390 pinctrl-1 = <&qspi_clk_sleep_pins_a
391 &qspi_bk1_sleep_pins_a
392 &qspi_cs1_sleep_pins_a>;
393 reg = <0x58003000 0x1000>, <0x70000000 0x4000000>;
394 #address-cells = <1>;
399 compatible = "jedec,spi-nor";
401 spi-max-frequency = <133000000>;
402 spi-rx-bus-width = <1>;
403 spi-tx-bus-width = <1>;
404 #address-cells = <1>;
418 arm,primecell-periphid = <0x10153180>;
419 pinctrl-names = "default", "opendrain", "sleep";
420 pinctrl-0 = <&sdmmc2_b4_pins_b>;
421 pinctrl-1 = <&sdmmc2_b4_od_pins_b>;
422 pinctrl-2 = <&sdmmc2_b4_sleep_pins_a>;
426 vmmc-supply = <&v3v3>;
431 pinctrl-names = "default";
432 pinctrl-0 = <&spi1_pins_a>;
433 cs-gpios = <&gpioz 3 0>;
438 /* spare dmas for other usage */
439 /delete-property/dmas;
440 /delete-property/dma-names;
442 pinctrl-0 = <&pwm1_pins_b>;
443 pinctrl-1 = <&pwm1_sleep_pins_b>;
444 pinctrl-names = "default", "sleep";
453 /delete-property/dmas;
454 /delete-property/dma-names;
456 pinctrl-0 = <&pwm4_pins_b>;
457 pinctrl-1 = <&pwm4_sleep_pins_b>;
458 pinctrl-names = "default", "sleep";
467 /delete-property/dmas;
468 /delete-property/dma-names;
470 pinctrl-0 = <&pwm5_pins_a>;
471 pinctrl-1 = <&pwm5_sleep_pins_a>;
472 pinctrl-names = "default", "sleep";
481 pinctrl-names = "default", "sleep", "idle";
482 pinctrl-0 = <&uart4_pins_a>;
483 pinctrl-1 = <&uart4_sleep_pins_a>;
484 pinctrl-2 = <&uart4_idle_pins_a>;
489 pinctrl-names = "default", "sleep";
490 pinctrl-0 = <&usart2_pins_a>;
491 pinctrl-1 = <&usart2_sleep_pins_a>;
496 pinctrl-names = "default", "sleep", "idle";
497 pinctrl-0 = <&usart3_pins_d>;
498 pinctrl-1 = <&usart3_sleep_pins_d>;
499 pinctrl-2 = <&usart3_idle_pins_d>;
504 phys = <&usbphyc_port0>;
510 phys = <&usbphyc_port0>;
516 dr_mode = "peripheral";
517 pinctrl-names = "default";
518 pinctrl-0 = <&usbotg_hs_pins_a>;
519 phy-names = "usb2-phy";
520 phys = <&usbphyc_port1 0>;
521 vbus-supply = <&vbus_otg>;
530 phy-supply = <&vdd_usb>;
534 phy-supply = <&vdd_usb>;
538 regulator-min-microvolt = <2500000>;
539 regulator-max-microvolt = <2500000>;
540 vdda-supply = <&vdd>;