]> git.ipfire.org Git - thirdparty/u-boot.git/blob - src/arm/st/stm32mp15xx-dhcor-drc-compact.dtsi
Squashed 'dts/upstream/' changes from aaba2d45dc2a..b35b9bd1d4ee
[thirdparty/u-boot.git] / src / arm / st / stm32mp15xx-dhcor-drc-compact.dtsi
1 // SPDX-License-Identifier: (GPL-2.0 OR BSD-3-Clause)
2 /*
3 * Copyright (C) 2022 Marek Vasut <marex@denx.de>
4 */
5
6 / {
7 aliases {
8 ethernet0 = &ethernet0;
9 ethernet1 = &ksz8851;
10 mmc0 = &sdmmc1;
11 rtc0 = &hwrtc;
12 rtc1 = &rtc;
13 serial0 = &uart4;
14 serial1 = &uart8;
15 serial2 = &usart3;
16 serial3 = &uart5;
17 spi0 = &qspi;
18 };
19
20 chosen {
21 stdout-path = "serial0:115200n8";
22 };
23
24 led {
25 compatible = "gpio-leds";
26 led1 {
27 label = "yellow:user0";
28 gpios = <&gpioz 6 GPIO_ACTIVE_LOW>;
29 default-state = "off";
30 };
31
32 led2 {
33 label = "red:user1";
34 gpios = <&gpioz 3 GPIO_ACTIVE_LOW>;
35 default-state = "off";
36 };
37 };
38
39 ethernet_vio: vioregulator {
40 compatible = "regulator-fixed";
41 regulator-name = "vio";
42 regulator-min-microvolt = <3300000>;
43 regulator-max-microvolt = <3300000>;
44 gpio = <&gpioh 2 GPIO_ACTIVE_LOW>;
45 regulator-always-on;
46 regulator-boot-on;
47 vin-supply = <&vdd>;
48 };
49 };
50
51 &adc { /* X11 ADC inputs */
52 pinctrl-names = "default";
53 pinctrl-0 = <&adc12_ain_pins_b>;
54 vdd-supply = <&vdd>;
55 vdda-supply = <&vdda>;
56 vref-supply = <&vdda>;
57 status = "okay";
58
59 adc1: adc@0 {
60 status = "okay";
61 channel@0 {
62 reg = <0>;
63 st,min-sample-time-ns = <5000>;
64 };
65 channel@1 {
66 reg = <1>;
67 st,min-sample-time-ns = <5000>;
68 };
69 channel@6 {
70 reg = <6>;
71 st,min-sample-time-ns = <5000>;
72 };
73 };
74
75 adc2: adc@100 {
76 status = "okay";
77 channel@0 {
78 reg = <0>;
79 st,min-sample-time-ns = <5000>;
80 };
81 channel@1 {
82 reg = <1>;
83 st,min-sample-time-ns = <5000>;
84 };
85 channel@2 {
86 reg = <2>;
87 st,min-sample-time-ns = <5000>;
88 };
89 };
90 };
91
92 &ethernet0 {
93 status = "okay";
94 pinctrl-0 = <&ethernet0_rgmii_pins_c>;
95 pinctrl-1 = <&ethernet0_rgmii_sleep_pins_c>;
96 pinctrl-names = "default", "sleep";
97 phy-mode = "rgmii";
98 max-speed = <1000>;
99 phy-handle = <&phy0>;
100
101 mdio {
102 #address-cells = <1>;
103 #size-cells = <0>;
104 compatible = "snps,dwmac-mdio";
105 reset-gpios = <&gpioz 2 GPIO_ACTIVE_LOW>;
106 reset-delay-us = <1000>;
107 reset-post-delay-us = <1000>;
108
109 phy0: ethernet-phy@7 {
110 reg = <7>;
111
112 rxc-skew-ps = <1500>;
113 rxdv-skew-ps = <540>;
114 rxd0-skew-ps = <420>;
115 rxd1-skew-ps = <420>;
116 rxd2-skew-ps = <420>;
117 rxd3-skew-ps = <420>;
118
119 txc-skew-ps = <1440>;
120 txen-skew-ps = <540>;
121 txd0-skew-ps = <420>;
122 txd1-skew-ps = <420>;
123 txd2-skew-ps = <420>;
124 txd3-skew-ps = <420>;
125 };
126 };
127 };
128
129 &fmc {
130 pinctrl-names = "default", "sleep";
131 pinctrl-0 = <&fmc_pins_b>;
132 pinctrl-1 = <&fmc_sleep_pins_b>;
133 status = "okay";
134
135 ksz8851: ethernet@1,0 {
136 compatible = "micrel,ks8851-mll";
137 reg = <1 0x0 0x2>, <1 0x2 0x20000>;
138 interrupt-parent = <&gpioc>;
139 interrupts = <3 IRQ_TYPE_LEVEL_LOW>;
140 bank-width = <2>;
141
142 /* Timing values are in nS */
143 st,fmc2-ebi-cs-mux-enable;
144 st,fmc2-ebi-cs-transaction-type = <4>;
145 st,fmc2-ebi-cs-buswidth = <16>;
146 st,fmc2-ebi-cs-address-setup-ns = <5>;
147 st,fmc2-ebi-cs-address-hold-ns = <5>;
148 st,fmc2-ebi-cs-bus-turnaround-ns = <5>;
149 st,fmc2-ebi-cs-data-setup-ns = <45>;
150 st,fmc2-ebi-cs-data-hold-ns = <1>;
151 st,fmc2-ebi-cs-write-address-setup-ns = <5>;
152 st,fmc2-ebi-cs-write-address-hold-ns = <5>;
153 st,fmc2-ebi-cs-write-bus-turnaround-ns = <5>;
154 st,fmc2-ebi-cs-write-data-setup-ns = <45>;
155 st,fmc2-ebi-cs-write-data-hold-ns = <1>;
156 };
157 };
158
159 &gpioa {
160 gpio-line-names = "", "", "", "",
161 "DRCC-VAR2", "", "", "",
162 "", "", "", "",
163 "", "", "", "";
164 };
165
166 &gpioe {
167 gpio-line-names = "", "", "", "",
168 "", "DRCC-GPIO0", "", "",
169 "", "", "", "",
170 "", "", "", "";
171 };
172
173 &gpiog {
174 gpio-line-names = "", "", "", "",
175 "", "", "", "",
176 "", "", "", "",
177 "DRCC-GPIO5", "", "", "";
178 };
179
180 &gpioh {
181 gpio-line-names = "", "", "", "DRCC-HW2",
182 "DRCC-GPIO4", "", "", "",
183 "DRCC-HW1", "DRCC-HW0", "", "DRCC-VAR1",
184 "DRCC-VAR0", "", "", "DRCC-GPIO6";
185 };
186
187 &gpioi {
188 gpio-line-names = "", "", "", "",
189 "", "", "", "DRCC-GPIO2",
190 "", "DRCC-GPIO1", "", "",
191 "", "", "", "";
192 };
193
194 &i2c1 { /* X11 I2C1 */
195 pinctrl-names = "default";
196 pinctrl-0 = <&i2c1_pins_b>;
197 i2c-scl-rising-time-ns = <185>;
198 i2c-scl-falling-time-ns = <20>;
199 status = "okay";
200 /delete-property/dmas;
201 /delete-property/dma-names;
202 };
203
204 &i2c4 {
205 hwrtc: rtc@32 {
206 compatible = "microcrystal,rv8803";
207 reg = <0x32>;
208 };
209
210 eeprom@50 {
211 compatible = "atmel,24c04";
212 reg = <0x50>;
213 pagesize = <16>;
214 };
215
216 dh_mac_eeprom: eeprom@53 {
217 compatible = "atmel,24c02";
218 reg = <0x53>;
219 pagesize = <16>;
220 };
221 };
222
223 &sdmmc1 { /* MicroSD */
224 pinctrl-names = "default", "opendrain", "sleep";
225 pinctrl-0 = <&sdmmc1_b4_pins_a>;
226 pinctrl-1 = <&sdmmc1_b4_od_pins_a>;
227 pinctrl-2 = <&sdmmc1_b4_sleep_pins_a>;
228 cd-gpios = <&gpioi 8 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>;
229 disable-wp;
230 st,neg-edge;
231 bus-width = <4>;
232 vmmc-supply = <&vdd>;
233 vqmmc-supply = <&vdd>;
234 status = "okay";
235 };
236
237 &sdmmc2 { /* eMMC */
238 pinctrl-names = "default", "opendrain", "sleep";
239 pinctrl-0 = <&sdmmc2_b4_pins_a &sdmmc2_d47_pins_c>;
240 pinctrl-1 = <&sdmmc2_b4_od_pins_a &sdmmc2_d47_pins_c>;
241 pinctrl-2 = <&sdmmc2_b4_sleep_pins_a &sdmmc2_d47_sleep_pins_c>;
242 bus-width = <8>;
243 no-sd;
244 no-sdio;
245 non-removable;
246 st,neg-edge;
247 vmmc-supply = <&v3v3>;
248 vqmmc-supply = <&vdd>;
249 status = "okay";
250 };
251
252 &sdmmc3 { /* SDIO Wi-Fi */
253 pinctrl-names = "default", "opendrain", "sleep";
254 pinctrl-0 = <&sdmmc3_b4_pins_a>;
255 pinctrl-1 = <&sdmmc3_b4_od_pins_a>;
256 pinctrl-2 = <&sdmmc3_b4_sleep_pins_a>;
257 broken-cd;
258 bus-width = <4>;
259 mmc-ddr-3_3v;
260 st,neg-edge;
261 vmmc-supply = <&v3v3>;
262 vqmmc-supply = <&v3v3>;
263 status = "okay";
264 };
265
266 &spi2 { /* X11 SPI */
267 pinctrl-names = "default";
268 pinctrl-0 = <&spi2_pins_b>;
269 cs-gpios = <&gpioi 0 0>;
270 status = "disabled";
271 /delete-property/dmas;
272 /delete-property/dma-names;
273 };
274
275 &uart4 {
276 label = "UART0";
277 pinctrl-names = "default";
278 pinctrl-0 = <&uart4_pins_d>;
279 /delete-property/dmas;
280 /delete-property/dma-names;
281 status = "okay";
282 };
283
284 &uart5 { /* X11 UART */
285 label = "X11-UART5";
286 pinctrl-names = "default";
287 pinctrl-0 = <&uart5_pins_a>;
288 /delete-property/dmas;
289 /delete-property/dma-names;
290 status = "okay";
291 };
292
293 &uart8 {
294 label = "RS485-1";
295 pinctrl-names = "default";
296 pinctrl-0 = <&uart8_pins_a &uart8_rtscts_pins_a>;
297 uart-has-rtscts;
298 /delete-property/dmas;
299 /delete-property/dma-names;
300 status = "okay";
301 };
302
303 &usart3 { /* RS485 or RS232 */
304 label = "RS485-2";
305 pinctrl-names = "default", "sleep";
306 pinctrl-0 = <&usart3_pins_e>;
307 pinctrl-1 = <&usart3_sleep_pins_e>;
308 uart-has-rtscts;
309 /delete-property/dmas;
310 /delete-property/dma-names;
311 status = "okay";
312 };
313
314 &usbh_ehci {
315 status = "okay";
316 };
317
318 &usbh_ohci {
319 status = "okay";
320 };
321
322 &usbotg_hs {
323 dr_mode = "otg";
324 pinctrl-0 = <&usbotg_hs_pins_a>;
325 pinctrl-names = "default";
326 phy-names = "usb2-phy";
327 phys = <&usbphyc_port1 0>;
328 vbus-supply = <&vbus_otg>;
329 status = "okay";
330 };
331
332 &usbphyc {
333 status = "okay";
334 };
335
336 &usbphyc_port0 {
337 phy-supply = <&vdd_usb>;
338 connector {
339 compatible = "usb-a-connector";
340 vbus-supply = <&vbus_sw>;
341 };
342 };
343
344 &usbphyc_port1 {
345 phy-supply = <&vdd_usb>;
346 };