xref: /rk3399_rockchip-uboot/arch/arm/dts/stm32mp157a-dk1.dts (revision 1a4f6af8bfd44c8ae6e87a81ff125eed47042cc5)
1*db704406SPatrick Delaunay// SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause)
2*db704406SPatrick Delaunay/*
3*db704406SPatrick Delaunay * Copyright (C) STMicroelectronics 2019 - All Rights Reserved
4*db704406SPatrick Delaunay * Author: Alexandre Torgue <alexandre.torgue@st.com> for STMicroelectronics.
5*db704406SPatrick Delaunay */
6*db704406SPatrick Delaunay
7*db704406SPatrick Delaunay/dts-v1/;
8*db704406SPatrick Delaunay
9*db704406SPatrick Delaunay#include "stm32mp157c.dtsi"
10*db704406SPatrick Delaunay#include "stm32mp157-pinctrl.dtsi"
11*db704406SPatrick Delaunay#include <dt-bindings/gpio/gpio.h>
12*db704406SPatrick Delaunay#include <dt-bindings/mfd/st,stpmic1.h>
13*db704406SPatrick Delaunay
14*db704406SPatrick Delaunay/ {
15*db704406SPatrick Delaunay	model = "STMicroelectronics STM32MP157A-DK1 Discovery Board";
16*db704406SPatrick Delaunay	compatible = "st,stm32mp157a-dk1", "st,stm32mp157";
17*db704406SPatrick Delaunay
18*db704406SPatrick Delaunay	aliases {
19*db704406SPatrick Delaunay		ethernet0 = &ethernet0;
20*db704406SPatrick Delaunay		serial0 = &uart4;
21*db704406SPatrick Delaunay	};
22*db704406SPatrick Delaunay
23*db704406SPatrick Delaunay	chosen {
24*db704406SPatrick Delaunay		stdout-path = "serial0:115200n8";
25*db704406SPatrick Delaunay	};
26*db704406SPatrick Delaunay
27*db704406SPatrick Delaunay	memory@c0000000 {
28*db704406SPatrick Delaunay		reg = <0xc0000000 0x20000000>;
29*db704406SPatrick Delaunay	};
30*db704406SPatrick Delaunay
31*db704406SPatrick Delaunay	led {
32*db704406SPatrick Delaunay		compatible = "gpio-leds";
33*db704406SPatrick Delaunay		blue {
34*db704406SPatrick Delaunay			label = "heartbeat";
35*db704406SPatrick Delaunay			gpios = <&gpiod 11 GPIO_ACTIVE_HIGH>;
36*db704406SPatrick Delaunay			linux,default-trigger = "heartbeat";
37*db704406SPatrick Delaunay			default-state = "off";
38*db704406SPatrick Delaunay		};
39*db704406SPatrick Delaunay	};
40*db704406SPatrick Delaunay};
41*db704406SPatrick Delaunay
42*db704406SPatrick Delaunay&ethernet0 {
43*db704406SPatrick Delaunay	status = "okay";
44*db704406SPatrick Delaunay	pinctrl-0 = <&ethernet0_rgmii_pins_a>;
45*db704406SPatrick Delaunay	pinctrl-1 = <&ethernet0_rgmii_pins_sleep_a>;
46*db704406SPatrick Delaunay	pinctrl-names = "default", "sleep";
47*db704406SPatrick Delaunay	phy-mode = "rgmii";
48*db704406SPatrick Delaunay	max-speed = <1000>;
49*db704406SPatrick Delaunay	phy-handle = <&phy0>;
50*db704406SPatrick Delaunay
51*db704406SPatrick Delaunay	mdio0 {
52*db704406SPatrick Delaunay		#address-cells = <1>;
53*db704406SPatrick Delaunay		#size-cells = <0>;
54*db704406SPatrick Delaunay		compatible = "snps,dwmac-mdio";
55*db704406SPatrick Delaunay		phy0: ethernet-phy@0 {
56*db704406SPatrick Delaunay			reg = <0>;
57*db704406SPatrick Delaunay		};
58*db704406SPatrick Delaunay	};
59*db704406SPatrick Delaunay};
60*db704406SPatrick Delaunay
61*db704406SPatrick Delaunay&i2c4 {
62*db704406SPatrick Delaunay	pinctrl-names = "default";
63*db704406SPatrick Delaunay	pinctrl-0 = <&i2c4_pins_a>;
64*db704406SPatrick Delaunay	i2c-scl-rising-time-ns = <185>;
65*db704406SPatrick Delaunay	i2c-scl-falling-time-ns = <20>;
66*db704406SPatrick Delaunay	status = "okay";
67*db704406SPatrick Delaunay	/delete-property/dmas;
68*db704406SPatrick Delaunay	/delete-property/dma-names;
69*db704406SPatrick Delaunay
70*db704406SPatrick Delaunay	typec: stusb1600@28 {
71*db704406SPatrick Delaunay		compatible = "st,stusb1600";
72*db704406SPatrick Delaunay		reg = <0x28>;
73*db704406SPatrick Delaunay		interrupts = <11 IRQ_TYPE_EDGE_FALLING>;
74*db704406SPatrick Delaunay		interrupt-parent = <&gpioi>;
75*db704406SPatrick Delaunay		pinctrl-names = "default";
76*db704406SPatrick Delaunay		pinctrl-0 = <&stusb1600_pins_a>;
77*db704406SPatrick Delaunay
78*db704406SPatrick Delaunay		status = "okay";
79*db704406SPatrick Delaunay
80*db704406SPatrick Delaunay		typec_con: connector {
81*db704406SPatrick Delaunay			compatible = "usb-c-connector";
82*db704406SPatrick Delaunay			label = "USB-C";
83*db704406SPatrick Delaunay			power-role = "sink";
84*db704406SPatrick Delaunay			power-opmode = "default";
85*db704406SPatrick Delaunay		};
86*db704406SPatrick Delaunay	};
87*db704406SPatrick Delaunay
88*db704406SPatrick Delaunay	pmic: stpmic@33 {
89*db704406SPatrick Delaunay		compatible = "st,stpmic1";
90*db704406SPatrick Delaunay		reg = <0x33>;
91*db704406SPatrick Delaunay		interrupt-controller;
92*db704406SPatrick Delaunay		#interrupt-cells = <2>;
93*db704406SPatrick Delaunay		status = "okay";
94*db704406SPatrick Delaunay
95*db704406SPatrick Delaunay		st,main-control-register = <0x04>;
96*db704406SPatrick Delaunay		st,vin-control-register = <0xc0>;
97*db704406SPatrick Delaunay		st,usb-control-register = <0x20>;
98*db704406SPatrick Delaunay
99*db704406SPatrick Delaunay		regulators {
100*db704406SPatrick Delaunay			compatible = "st,stpmic1-regulators";
101*db704406SPatrick Delaunay
102*db704406SPatrick Delaunay			ldo1-supply = <&v3v3>;
103*db704406SPatrick Delaunay			ldo3-supply = <&vdd_ddr>;
104*db704406SPatrick Delaunay			ldo6-supply = <&v3v3>;
105*db704406SPatrick Delaunay			pwr_sw1-supply = <&bst_out>;
106*db704406SPatrick Delaunay			pwr_sw2-supply = <&bst_out>;
107*db704406SPatrick Delaunay
108*db704406SPatrick Delaunay			vddcore: buck1 {
109*db704406SPatrick Delaunay				regulator-name = "vddcore";
110*db704406SPatrick Delaunay				regulator-min-microvolt = <1200000>;
111*db704406SPatrick Delaunay				regulator-max-microvolt = <1350000>;
112*db704406SPatrick Delaunay				regulator-always-on;
113*db704406SPatrick Delaunay				regulator-initial-mode = <0>;
114*db704406SPatrick Delaunay				regulator-over-current-protection;
115*db704406SPatrick Delaunay			};
116*db704406SPatrick Delaunay
117*db704406SPatrick Delaunay			vdd_ddr: buck2 {
118*db704406SPatrick Delaunay				regulator-name = "vdd_ddr";
119*db704406SPatrick Delaunay				regulator-min-microvolt = <1350000>;
120*db704406SPatrick Delaunay				regulator-max-microvolt = <1350000>;
121*db704406SPatrick Delaunay				regulator-always-on;
122*db704406SPatrick Delaunay				regulator-initial-mode = <0>;
123*db704406SPatrick Delaunay				regulator-over-current-protection;
124*db704406SPatrick Delaunay			};
125*db704406SPatrick Delaunay
126*db704406SPatrick Delaunay			vdd: buck3 {
127*db704406SPatrick Delaunay				regulator-name = "vdd";
128*db704406SPatrick Delaunay				regulator-min-microvolt = <3300000>;
129*db704406SPatrick Delaunay				regulator-max-microvolt = <3300000>;
130*db704406SPatrick Delaunay				regulator-always-on;
131*db704406SPatrick Delaunay				st,mask-reset;
132*db704406SPatrick Delaunay				regulator-initial-mode = <0>;
133*db704406SPatrick Delaunay				regulator-over-current-protection;
134*db704406SPatrick Delaunay			};
135*db704406SPatrick Delaunay
136*db704406SPatrick Delaunay			v3v3: buck4 {
137*db704406SPatrick Delaunay				regulator-name = "v3v3";
138*db704406SPatrick Delaunay				regulator-min-microvolt = <3300000>;
139*db704406SPatrick Delaunay				regulator-max-microvolt = <3300000>;
140*db704406SPatrick Delaunay				regulator-always-on;
141*db704406SPatrick Delaunay				regulator-over-current-protection;
142*db704406SPatrick Delaunay				regulator-initial-mode = <0>;
143*db704406SPatrick Delaunay			};
144*db704406SPatrick Delaunay
145*db704406SPatrick Delaunay			v1v8_audio: ldo1 {
146*db704406SPatrick Delaunay				regulator-name = "v1v8_audio";
147*db704406SPatrick Delaunay				regulator-min-microvolt = <1800000>;
148*db704406SPatrick Delaunay				regulator-max-microvolt = <1800000>;
149*db704406SPatrick Delaunay				regulator-always-on;
150*db704406SPatrick Delaunay				interrupts = <IT_CURLIM_LDO1 0>;
151*db704406SPatrick Delaunay			};
152*db704406SPatrick Delaunay
153*db704406SPatrick Delaunay			v3v3_hdmi: ldo2 {
154*db704406SPatrick Delaunay				regulator-name = "v3v3_hdmi";
155*db704406SPatrick Delaunay				regulator-min-microvolt = <3300000>;
156*db704406SPatrick Delaunay				regulator-max-microvolt = <3300000>;
157*db704406SPatrick Delaunay				regulator-always-on;
158*db704406SPatrick Delaunay				interrupts = <IT_CURLIM_LDO2 0>;
159*db704406SPatrick Delaunay			};
160*db704406SPatrick Delaunay
161*db704406SPatrick Delaunay			vtt_ddr: ldo3 {
162*db704406SPatrick Delaunay				regulator-name = "vtt_ddr";
163*db704406SPatrick Delaunay				regulator-min-microvolt = <500000>;
164*db704406SPatrick Delaunay				regulator-max-microvolt = <750000>;
165*db704406SPatrick Delaunay				regulator-always-on;
166*db704406SPatrick Delaunay				regulator-over-current-protection;
167*db704406SPatrick Delaunay			};
168*db704406SPatrick Delaunay
169*db704406SPatrick Delaunay			vdd_usb: ldo4 {
170*db704406SPatrick Delaunay				regulator-name = "vdd_usb";
171*db704406SPatrick Delaunay				regulator-min-microvolt = <3300000>;
172*db704406SPatrick Delaunay				regulator-max-microvolt = <3300000>;
173*db704406SPatrick Delaunay				interrupts = <IT_CURLIM_LDO4 0>;
174*db704406SPatrick Delaunay			};
175*db704406SPatrick Delaunay
176*db704406SPatrick Delaunay			vdda: ldo5 {
177*db704406SPatrick Delaunay				regulator-name = "vdda";
178*db704406SPatrick Delaunay				regulator-min-microvolt = <2900000>;
179*db704406SPatrick Delaunay				regulator-max-microvolt = <2900000>;
180*db704406SPatrick Delaunay				interrupts = <IT_CURLIM_LDO5 0>;
181*db704406SPatrick Delaunay				regulator-boot-on;
182*db704406SPatrick Delaunay			};
183*db704406SPatrick Delaunay
184*db704406SPatrick Delaunay			v1v2_hdmi: ldo6 {
185*db704406SPatrick Delaunay				regulator-name = "v1v2_hdmi";
186*db704406SPatrick Delaunay				regulator-min-microvolt = <1200000>;
187*db704406SPatrick Delaunay				regulator-max-microvolt = <1200000>;
188*db704406SPatrick Delaunay				regulator-always-on;
189*db704406SPatrick Delaunay				interrupts = <IT_CURLIM_LDO6 0>;
190*db704406SPatrick Delaunay
191*db704406SPatrick Delaunay			};
192*db704406SPatrick Delaunay
193*db704406SPatrick Delaunay			vref_ddr: vref_ddr {
194*db704406SPatrick Delaunay				regulator-name = "vref_ddr";
195*db704406SPatrick Delaunay				regulator-always-on;
196*db704406SPatrick Delaunay				regulator-over-current-protection;
197*db704406SPatrick Delaunay			};
198*db704406SPatrick Delaunay
199*db704406SPatrick Delaunay			 bst_out: boost {
200*db704406SPatrick Delaunay				regulator-name = "bst_out";
201*db704406SPatrick Delaunay				interrupts = <IT_OCP_BOOST 0>;
202*db704406SPatrick Delaunay			 };
203*db704406SPatrick Delaunay
204*db704406SPatrick Delaunay			vbus_otg: pwr_sw1 {
205*db704406SPatrick Delaunay				regulator-name = "vbus_otg";
206*db704406SPatrick Delaunay				interrupts = <IT_OCP_OTG 0>;
207*db704406SPatrick Delaunay				regulator-active-discharge;
208*db704406SPatrick Delaunay			 };
209*db704406SPatrick Delaunay
210*db704406SPatrick Delaunay			 vbus_sw: pwr_sw2 {
211*db704406SPatrick Delaunay				regulator-name = "vbus_sw";
212*db704406SPatrick Delaunay				interrupts = <IT_OCP_SWOUT 0>;
213*db704406SPatrick Delaunay				regulator-active-discharge;
214*db704406SPatrick Delaunay			 };
215*db704406SPatrick Delaunay		};
216*db704406SPatrick Delaunay
217*db704406SPatrick Delaunay		onkey {
218*db704406SPatrick Delaunay			compatible = "st,stpmic1-onkey";
219*db704406SPatrick Delaunay			interrupts = <IT_PONKEY_F 0>, <IT_PONKEY_R 1>;
220*db704406SPatrick Delaunay			interrupt-names = "onkey-falling", "onkey-rising";
221*db704406SPatrick Delaunay			status = "okay";
222*db704406SPatrick Delaunay		};
223*db704406SPatrick Delaunay
224*db704406SPatrick Delaunay		watchdog {
225*db704406SPatrick Delaunay			compatible = "st,stpmic1-wdt";
226*db704406SPatrick Delaunay			status = "disabled";
227*db704406SPatrick Delaunay		};
228*db704406SPatrick Delaunay	};
229*db704406SPatrick Delaunay};
230*db704406SPatrick Delaunay
231*db704406SPatrick Delaunay&iwdg2 {
232*db704406SPatrick Delaunay	timeout-sec = <32>;
233*db704406SPatrick Delaunay	status = "okay";
234*db704406SPatrick Delaunay};
235*db704406SPatrick Delaunay
236*db704406SPatrick Delaunay&pwr {
237*db704406SPatrick Delaunay	pwr-supply = <&vdd>;
238*db704406SPatrick Delaunay};
239*db704406SPatrick Delaunay
240*db704406SPatrick Delaunay&rng1 {
241*db704406SPatrick Delaunay	status = "okay";
242*db704406SPatrick Delaunay};
243*db704406SPatrick Delaunay
244*db704406SPatrick Delaunay&rtc {
245*db704406SPatrick Delaunay	status = "okay";
246*db704406SPatrick Delaunay};
247*db704406SPatrick Delaunay
248*db704406SPatrick Delaunay&sdmmc1 {
249*db704406SPatrick Delaunay	pinctrl-names = "default";
250*db704406SPatrick Delaunay	pinctrl-0 = <&sdmmc1_b4_pins_a>;
251*db704406SPatrick Delaunay	broken-cd;
252*db704406SPatrick Delaunay	st,neg-edge;
253*db704406SPatrick Delaunay	bus-width = <4>;
254*db704406SPatrick Delaunay	vmmc-supply = <&v3v3>;
255*db704406SPatrick Delaunay	status = "okay";
256*db704406SPatrick Delaunay};
257*db704406SPatrick Delaunay
258*db704406SPatrick Delaunay&uart4 {
259*db704406SPatrick Delaunay	pinctrl-names = "default";
260*db704406SPatrick Delaunay	pinctrl-0 = <&uart4_pins_a>;
261*db704406SPatrick Delaunay	status = "okay";
262*db704406SPatrick Delaunay};
263*db704406SPatrick Delaunay
264*db704406SPatrick Delaunay&usbh_ehci {
265*db704406SPatrick Delaunay	phys = <&usbphyc_port0>;
266*db704406SPatrick Delaunay	phy-names = "usb";
267*db704406SPatrick Delaunay	status = "okay";
268*db704406SPatrick Delaunay};
269*db704406SPatrick Delaunay
270*db704406SPatrick Delaunay&usbotg_hs {
271*db704406SPatrick Delaunay	dr_mode = "peripheral";
272*db704406SPatrick Delaunay	phys = <&usbphyc_port1 0>;
273*db704406SPatrick Delaunay	phy-names = "usb2-phy";
274*db704406SPatrick Delaunay	status = "okay";
275*db704406SPatrick Delaunay};
276*db704406SPatrick Delaunay
277*db704406SPatrick Delaunay&usbphyc {
278*db704406SPatrick Delaunay	status = "okay";
279*db704406SPatrick Delaunay};
280*db704406SPatrick Delaunay
281*db704406SPatrick Delaunay&usbphyc_port0 {
282*db704406SPatrick Delaunay	phy-supply = <&vdd_usb>;
283*db704406SPatrick Delaunay};
284*db704406SPatrick Delaunay
285*db704406SPatrick Delaunay&usbphyc_port1 {
286*db704406SPatrick Delaunay	phy-supply = <&vdd_usb>;
287*db704406SPatrick Delaunay};
288*db704406SPatrick Delaunay
289*db704406SPatrick Delaunay&vrefbuf {
290*db704406SPatrick Delaunay	regulator-min-microvolt = <2500000>;
291*db704406SPatrick Delaunay	regulator-max-microvolt = <2500000>;
292*db704406SPatrick Delaunay	vdda-supply = <&vdd>;
293*db704406SPatrick Delaunay	status = "okay";
294*db704406SPatrick Delaunay};
295