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>;
72 gpu_reserved: gpu@dc000000 {
73 reg = <0xdc000000 0x4000000>;
79 compatible = "gpio-leds";
82 gpios = <&gpioa 13 GPIO_ACTIVE_LOW>;
83 linux,default-trigger = "none";
84 default-state = "off";
89 gpios = <&gpioa 14 GPIO_ACTIVE_LOW>;
90 linux,default-trigger = "heartbeat";
99 vref-supply = <&vrefbuf>;
103 pinctrl-names = "default";
104 pinctrl-0 = <&adc1_in6_pins_a>;
105 st,min-sample-time-nsecs = <5000>;
106 st,adc-channels = <6>;
111 #address-cells = <1>;
116 label = "sense_temp";
117 st,min-sample-time-ns = <9000>;
122 st,min-sample-time-ns = <9000>;
127 st,min-sample-time-ns = <9000>;
132 st,min-sample-time-ns = <9000>;
146 pinctrl-names = "default";
147 pinctrl-0 = <&dac_ch1_pins_a &dac_ch2_pins_a>;
148 vref-supply = <&vdda>;
165 snps,reset-gpio = <&gpioa 1 GPIO_ACTIVE_LOW>;
166 snps,reset-active-low;
167 snps,reset-delays-us = <0 30000 50000>;
168 pinctrl-0 = <ðernet0_rmii_pins_b>;
169 pinctrl-1 = <ðernet0_rmii_sleep_pins_b>;
170 pinctrl-names = "default", "sleep";
173 phy-handle = <&phy0>;
177 #address-cells = <1>;
179 compatible = "snps,dwmac-mdio";
180 phy0: ethernet-phy@0 {
187 contiguous-area = <&gpu_reserved>;
195 pinctrl-names = "default", "sleep";
196 pinctrl-0 = <&i2c1_pins_a>;
197 pinctrl-1 = <&i2c1_sleep_pins_a>;
198 i2c-scl-rising-time-ns = <100>;
199 i2c-scl-falling-time-ns = <7>;
201 /delete-property/dmas;
202 /delete-property/dma-names;
206 pinctrl-names = "default", "sleep";
207 pinctrl-0 = <&i2c4_pins_a>;
208 pinctrl-1 = <&i2c4_sleep_pins_a>;
209 i2c-scl-rising-time-ns = <185>;
210 i2c-scl-falling-time-ns = <20>;
212 /delete-property/dmas;
213 /delete-property/dma-names;
216 compatible = "st,stpmic1";
218 interrupts-extended = <&gpioa 0 IRQ_TYPE_EDGE_FALLING>;
219 interrupt-controller;
220 #interrupt-cells = <2>;
224 compatible = "st,stpmic1-regulators";
226 ldo1-supply = <&v3v3>;
227 ldo3-supply = <&vdd_ddr>;
228 ldo6-supply = <&v3v3>;
229 pwr_sw1-supply = <&bst_out>;
230 pwr_sw2-supply = <&bst_out>;
233 regulator-name = "vddcore";
234 regulator-min-microvolt = <1200000>;
235 regulator-max-microvolt = <1350000>;
237 regulator-initial-mode = <0>;
238 regulator-over-current-protection;
242 regulator-name = "vdd_ddr";
243 regulator-min-microvolt = <1350000>;
244 regulator-max-microvolt = <1350000>;
246 regulator-initial-mode = <0>;
247 regulator-over-current-protection;
251 regulator-name = "vdd";
252 regulator-min-microvolt = <3300000>;
253 regulator-max-microvolt = <3300000>;
256 regulator-initial-mode = <0>;
257 regulator-over-current-protection;
261 regulator-name = "v3v3";
262 regulator-min-microvolt = <3300000>;
263 regulator-max-microvolt = <3300000>;
265 regulator-over-current-protection;
266 regulator-initial-mode = <0>;
270 regulator-name = "v1v8_audio";
271 regulator-min-microvolt = <1800000>;
272 regulator-max-microvolt = <1800000>;
274 interrupts = <IT_CURLIM_LDO1 0>;
278 regulator-name = "v3v3_hdmi";
279 regulator-min-microvolt = <3300000>;
280 regulator-max-microvolt = <3300000>;
282 interrupts = <IT_CURLIM_LDO2 0>;
286 regulator-name = "vtt_ddr";
287 regulator-min-microvolt = <500000>;
288 regulator-max-microvolt = <750000>;
290 regulator-over-current-protection;
294 regulator-name = "vdd_usb";
295 regulator-min-microvolt = <3300000>;
296 regulator-max-microvolt = <3300000>;
297 interrupts = <IT_CURLIM_LDO4 0>;
301 regulator-name = "vdd_sd";
302 regulator-min-microvolt = <3300000>;
303 regulator-max-microvolt = <3300000>;
304 interrupts = <IT_CURLIM_LDO5 0>;
309 regulator-name = "vdda";
310 regulator-min-microvolt = <2900000>;
311 regulator-max-microvolt = <2900000>;
313 interrupts = <IT_CURLIM_LDO6 0>;
318 regulator-name = "vref_ddr";
320 regulator-over-current-protection;
324 regulator-name = "bst_out";
325 interrupts = <IT_OCP_BOOST 0>;
329 regulator-name = "vbus_otg";
330 interrupts = <IT_OCP_OTG 0>;
331 regulator-active-discharge;
335 regulator-name = "usbh_vbus";
336 interrupts = <IT_OCP_SWOUT 0>;
343 compatible = "st,stpmic1-onkey";
344 interrupts = <IT_PONKEY_F 0>, <IT_PONKEY_R 1>;
345 interrupt-names = "onkey-falling", "onkey-rising";
350 compatible = "st,stpmic1-wdt";
357 pinctrl-names = "default", "sleep";
358 pinctrl-0 = <&i2c5_pins_a>;
359 pinctrl-1 = <&i2c5_sleep_pins_a>;
360 i2c-scl-rising-time-ns = <185>;
361 i2c-scl-falling-time-ns = <20>;
362 /delete-property/dmas;
363 /delete-property/dma-names;
376 memory-region = <&retram>, <&mcuram>, <&mcuram2>, <&vdev0vring0>,
377 <&vdev0vring1>, <&vdev0buffer>;
378 mboxes = <&ipcc 0>, <&ipcc 1>, <&ipcc 2>;
379 mbox-names = "vq0", "vq1", "shutdown";
380 interrupt-parent = <&exti>;
382 interrupt-names = "wdg";
389 vdd_3v3_usbfs-supply = <&vdd_usb>;
393 pinctrl-names = "default", "sleep";
394 pinctrl-0 = <&qspi_clk_pins_a &qspi_bk1_pins_a>;
395 pinctrl-1 = <&qspi_clk_sleep_pins_a &qspi_bk1_sleep_pins_a>;
396 reg = <0x58003000 0x1000>, <0x70000000 0x4000000>;
397 #address-cells = <1>;
402 compatible = "jedec,spi-nor";
404 spi-max-frequency = <133000000>;
405 spi-rx-bus-width = <1>;
406 spi-tx-bus-width = <1>;
407 #address-cells = <1>;
421 arm,primecell-periphid = <0x10153180>;
422 pinctrl-names = "default", "opendrain", "sleep";
423 pinctrl-0 = <&sdmmc2_b4_pins_b>;
424 pinctrl-1 = <&sdmmc2_b4_od_pins_b>;
425 pinctrl-2 = <&sdmmc2_b4_sleep_pins_a>;
429 vmmc-supply = <&v3v3>;
434 pinctrl-names = "default";
435 pinctrl-0 = <&spi1_pins_a>;
436 cs-gpios = <&gpioz 3 0>;
440 compatible = "spidev";
442 spi-max-frequency = <100000>;
447 /* spare dmas for other usage */
448 /delete-property/dmas;
449 /delete-property/dma-names;
451 pinctrl-0 = <&pwm1_pins_b>;
452 pinctrl-1 = <&pwm1_sleep_pins_b>;
453 pinctrl-names = "default", "sleep";
462 /delete-property/dmas;
463 /delete-property/dma-names;
465 pinctrl-0 = <&pwm4_pins_b>;
466 pinctrl-1 = <&pwm4_sleep_pins_b>;
467 pinctrl-names = "default", "sleep";
476 /delete-property/dmas;
477 /delete-property/dma-names;
479 pinctrl-0 = <&pwm5_pins_a>;
480 pinctrl-1 = <&pwm5_sleep_pins_a>;
481 pinctrl-names = "default", "sleep";
490 pinctrl-names = "default", "sleep", "idle";
491 pinctrl-0 = <&uart4_pins_a>;
492 pinctrl-1 = <&uart4_sleep_pins_a>;
493 pinctrl-2 = <&uart4_idle_pins_a>;
498 pinctrl-names = "default", "sleep";
499 pinctrl-0 = <&usart2_pins_a>;
500 pinctrl-1 = <&usart2_sleep_pins_a>;
505 pinctrl-names = "default", "sleep", "idle";
506 pinctrl-0 = <&usart3_pins_d>;
507 pinctrl-1 = <&usart3_sleep_pins_d>;
508 pinctrl-2 = <&usart3_idle_pins_d>;
513 phys = <&usbphyc_port0>;
519 phys = <&usbphyc_port0>;
525 dr_mode = "peripheral";
526 pinctrl-names = "default";
527 pinctrl-0 = <&usbotg_hs_pins_a>;
528 phy-names = "usb2-phy";
529 phys = <&usbphyc_port1 0>;
530 vbus-supply = <&vbus_otg>;
539 phy-supply = <&vdd_usb>;
543 phy-supply = <&vdd_usb>;
547 regulator-min-microvolt = <2500000>;
548 regulator-max-microvolt = <2500000>;
549 vdda-supply = <&vdd>;