blob: b83c9e9e6e1313116734674f0402f7aa4511468c [file] [log] [blame]
Andrew Davis51b21c72023-04-11 13:24:56 -05001// SPDX-License-Identifier: GPL-2.0-only
Schuyler Patton332dddc2016-06-10 09:35:45 +05302/*
Andrew Davis51b21c72023-04-11 13:24:56 -05003 * Copyright (C) 2015-2016 Texas Instruments Incorporated - https://www.ti.com/
Schuyler Patton332dddc2016-06-10 09:35:45 +05304 */
5
Lokesh Vutlaa0c0b972016-11-25 11:14:18 +05306#include "am57xx-industrial-grade.dtsi"
7
Schuyler Patton332dddc2016-06-10 09:35:45 +05308/ {
9 aliases {
10 rtc0 = &tps659038_rtc;
11 rtc1 = &rtc;
12 };
13
Lokesh Vutlaa0c0b972016-11-25 11:14:18 +053014 chosen {
15 stdout-path = &uart3;
16 };
17
Schuyler Patton332dddc2016-06-10 09:35:45 +053018 vmain: fixedregulator-vmain {
19 compatible = "regulator-fixed";
20 regulator-name = "VMAIN";
21 regulator-min-microvolt = <5000000>;
22 regulator-max-microvolt = <5000000>;
23 regulator-always-on;
24 regulator-boot-on;
25 };
26
27 v3_3d: fixedregulator-v3_3d {
28 compatible = "regulator-fixed";
29 regulator-name = "V3_3D";
30 vin-supply = <&smps9_reg>;
31 regulator-min-microvolt = <3300000>;
32 regulator-max-microvolt = <3300000>;
33 regulator-always-on;
34 regulator-boot-on;
35 };
36
37 vtt_fixed: fixedregulator-vtt {
38 /* TPS51200 */
39 compatible = "regulator-fixed";
40 regulator-name = "vtt_fixed";
41 vin-supply = <&v3_3d>;
42 regulator-min-microvolt = <3300000>;
43 regulator-max-microvolt = <3300000>;
44 regulator-always-on;
45 regulator-boot-on;
46 };
Lokesh Vutla4ddaa6c2017-08-21 12:50:59 +053047
48 leds-iio {
49 status = "disabled";
50 compatible = "gpio-leds";
51 led-out0 {
52 label = "out0";
53 gpios = <&tpic2810 0 GPIO_ACTIVE_HIGH>;
54 default-state = "off";
55 };
56
57 led-out1 {
58 label = "out1";
59 gpios = <&tpic2810 1 GPIO_ACTIVE_HIGH>;
60 default-state = "off";
61 };
62
63 led-out2 {
64 label = "out2";
65 gpios = <&tpic2810 2 GPIO_ACTIVE_HIGH>;
66 default-state = "off";
67 };
68
69 led-out3 {
70 label = "out3";
71 gpios = <&tpic2810 3 GPIO_ACTIVE_HIGH>;
72 default-state = "off";
73 };
74
75 led-out4 {
76 label = "out4";
77 gpios = <&tpic2810 4 GPIO_ACTIVE_HIGH>;
78 default-state = "off";
79 };
80
81 led-out5 {
82 label = "out5";
83 gpios = <&tpic2810 5 GPIO_ACTIVE_HIGH>;
84 default-state = "off";
85 };
86
87 led-out6 {
88 label = "out6";
89 gpios = <&tpic2810 6 GPIO_ACTIVE_HIGH>;
90 default-state = "off";
91 };
92
93 led-out7 {
94 label = "out7";
95 gpios = <&tpic2810 7 GPIO_ACTIVE_HIGH>;
96 default-state = "off";
97 };
98 };
99};
100
101&dra7_pmx_core {
102 dcan1_pins_default: dcan1_pins_default {
103 pinctrl-single,pins = <
104 DRA7XX_CORE_IOPAD(0x37d0, PIN_OUTPUT_PULLUP | MUX_MODE0) /* dcan1_tx */
105 DRA7XX_CORE_IOPAD(0x37d4, PIN_INPUT_PULLUP | MUX_MODE0) /* dcan1_rx */
106 >;
107 };
108
109 dcan1_pins_sleep: dcan1_pins_sleep {
110 pinctrl-single,pins = <
111 DRA7XX_CORE_IOPAD(0x37d0, MUX_MODE15 | PULL_UP) /* dcan1_tx.off */
112 DRA7XX_CORE_IOPAD(0x37d4, MUX_MODE15 | PULL_UP) /* dcan1_rx.off */
113 >;
114 };
Schuyler Patton332dddc2016-06-10 09:35:45 +0530115};
116
117&i2c1 {
118 status = "okay";
119 clock-frequency = <400000>;
120
121 tps659038: tps659038@58 {
122 compatible = "ti,tps659038";
123 reg = <0x58>;
124 interrupts-extended = <&gpio6 16 IRQ_TYPE_LEVEL_HIGH
125 &dra7_pmx_core 0x418>;
126 #interrupt-cells = <2>;
127 interrupt-controller;
128 ti,system-power-controller;
Lokesh Vutla4ddaa6c2017-08-21 12:50:59 +0530129 ti,palmas-override-powerhold;
Schuyler Patton332dddc2016-06-10 09:35:45 +0530130
131 tps659038_pmic {
132 compatible = "ti,tps659038-pmic";
Lokesh Vutlaa0c0b972016-11-25 11:14:18 +0530133
134 smps12-in-supply = <&vmain>;
135 smps3-in-supply = <&vmain>;
136 smps45-in-supply = <&vmain>;
137 smps6-in-supply = <&vmain>;
138 smps7-in-supply = <&vmain>;
139 smps8-in-supply = <&vmain>;
140 smps9-in-supply = <&vmain>;
141 ldo1-in-supply = <&vmain>;
142 ldo2-in-supply = <&vmain>;
143 ldo3-in-supply = <&vmain>;
144 ldo4-in-supply = <&vmain>;
145 ldo9-in-supply = <&vmain>;
146 ldoln-in-supply = <&vmain>;
147 ldousb-in-supply = <&vmain>;
148 ldortc-in-supply = <&vmain>;
149
Schuyler Patton332dddc2016-06-10 09:35:45 +0530150 regulators {
151 smps12_reg: smps12 {
152 /* VDD_MPU */
Schuyler Patton332dddc2016-06-10 09:35:45 +0530153 regulator-name = "smps12";
154 regulator-min-microvolt = <850000>;
155 regulator-max-microvolt = <1250000>;
156 regulator-always-on;
157 regulator-boot-on;
158 };
159
160 smps3_reg: smps3 {
161 /* VDD_DDR EMIF1 EMIF2 */
Schuyler Patton332dddc2016-06-10 09:35:45 +0530162 regulator-name = "smps3";
163 regulator-min-microvolt = <1350000>;
164 regulator-max-microvolt = <1350000>;
165 regulator-always-on;
166 regulator-boot-on;
167 };
168
169 smps45_reg: smps45 {
170 /* VDD_DSPEVE on AM572 */
171 /* VDD_IVA + VDD_DSP on AM571 */
Schuyler Patton332dddc2016-06-10 09:35:45 +0530172 regulator-name = "smps45";
173 regulator-min-microvolt = <850000>;
174 regulator-max-microvolt = <1250000>;
175 regulator-always-on;
176 regulator-boot-on;
177 };
178
179 smps6_reg: smps6 {
180 /* VDD_GPU */
Schuyler Patton332dddc2016-06-10 09:35:45 +0530181 regulator-name = "smps6";
182 regulator-min-microvolt = <850000>;
183 regulator-max-microvolt = <1250000>;
184 regulator-always-on;
185 regulator-boot-on;
186 };
187
188 smps7_reg: smps7 {
189 /* VDD_CORE */
Schuyler Patton332dddc2016-06-10 09:35:45 +0530190 regulator-name = "smps7";
191 regulator-min-microvolt = <850000>;
192 regulator-max-microvolt = <1150000>;
193 regulator-always-on;
194 regulator-boot-on;
195 };
196
197 smps8_reg: smps8 {
198 /* 5728 - VDD_IVAHD */
199 /* 5718 - N.C. test point */
Schuyler Patton332dddc2016-06-10 09:35:45 +0530200 regulator-name = "smps8";
201 };
202
203 smps9_reg: smps9 {
204 /* VDD_3_3D */
Schuyler Patton332dddc2016-06-10 09:35:45 +0530205 regulator-name = "smps9";
206 regulator-min-microvolt = <3300000>;
207 regulator-max-microvolt = <3300000>;
208 regulator-always-on;
209 regulator-boot-on;
210 };
211
212 ldo1_reg: ldo1 {
213 /* VDDSHV8 - VSDMMC */
214 /* NOTE: on rev 1.3a, data supply */
Schuyler Patton332dddc2016-06-10 09:35:45 +0530215 regulator-name = "ldo1";
216 regulator-min-microvolt = <1800000>;
217 regulator-max-microvolt = <3300000>;
218 regulator-boot-on;
219 regulator-always-on;
220 };
221
222 ldo2_reg: ldo2 {
223 /* VDDSH18V */
Schuyler Patton332dddc2016-06-10 09:35:45 +0530224 regulator-name = "ldo2";
225 regulator-min-microvolt = <1800000>;
226 regulator-max-microvolt = <1800000>;
227 regulator-always-on;
228 regulator-boot-on;
229 };
230
231 ldo3_reg: ldo3 {
232 /* R1.3a 572x V1_8PHY_LDO3: USB, SATA */
Schuyler Patton332dddc2016-06-10 09:35:45 +0530233 regulator-name = "ldo3";
234 regulator-min-microvolt = <1800000>;
235 regulator-max-microvolt = <1800000>;
236 regulator-always-on;
237 regulator-boot-on;
238 };
239
240 ldo4_reg: ldo4 {
241 /* R1.3a 572x V1_8PHY_LDO4: PCIE, HDMI*/
Schuyler Patton332dddc2016-06-10 09:35:45 +0530242 regulator-name = "ldo4";
243 regulator-min-microvolt = <1800000>;
244 regulator-max-microvolt = <1800000>;
245 regulator-always-on;
246 regulator-boot-on;
247 };
248
249 /* LDO5-8 unused */
250
251 ldo9_reg: ldo9 {
252 /* VDD_RTC */
Schuyler Patton332dddc2016-06-10 09:35:45 +0530253 regulator-name = "ldo9";
254 regulator-min-microvolt = <840000>;
255 regulator-max-microvolt = <1160000>;
256 regulator-always-on;
257 regulator-boot-on;
258 };
259
260 ldoln_reg: ldoln {
261 /* VDDA_1V8_PLL */
Schuyler Patton332dddc2016-06-10 09:35:45 +0530262 regulator-name = "ldoln";
263 regulator-min-microvolt = <1800000>;
264 regulator-max-microvolt = <1800000>;
265 regulator-always-on;
266 regulator-boot-on;
267 };
268
269 ldousb_reg: ldousb {
270 /* VDDA_3V_USB: VDDA_USBHS33 */
Schuyler Patton332dddc2016-06-10 09:35:45 +0530271 regulator-name = "ldousb";
272 regulator-min-microvolt = <3300000>;
273 regulator-max-microvolt = <3300000>;
274 regulator-always-on;
275 regulator-boot-on;
276 };
277
278 ldortc_reg: ldortc {
279 /* VDDA_RTC */
Schuyler Patton332dddc2016-06-10 09:35:45 +0530280 regulator-name = "ldortc";
281 regulator-min-microvolt = <1800000>;
282 regulator-max-microvolt = <1800000>;
283 regulator-always-on;
284 regulator-boot-on;
285 };
286
287 regen1: regen1 {
288 /* VDD_3V3_ON */
289 regulator-name = "regen1";
290 regulator-boot-on;
291 regulator-always-on;
292 };
293
294 regen2: regen2 {
295 /* Needed for PMIC internal resource */
296 regulator-name = "regen2";
297 regulator-boot-on;
298 regulator-always-on;
299 };
300 };
301 };
302
303 tps659038_rtc: tps659038_rtc {
304 compatible = "ti,palmas-rtc";
305 interrupt-parent = <&tps659038>;
306 interrupts = <8 IRQ_TYPE_EDGE_FALLING>;
307 wakeup-source;
308 };
309
310 tps659038_pwr_button: tps659038_pwr_button {
311 compatible = "ti,palmas-pwrbutton";
312 interrupt-parent = <&tps659038>;
313 interrupts = <1 IRQ_TYPE_EDGE_FALLING>;
314 wakeup-source;
315 ti,palmas-long-press-seconds = <12>;
316 };
317
318 tps659038_gpio: tps659038_gpio {
319 compatible = "ti,palmas-gpio";
320 gpio-controller;
321 #gpio-cells = <2>;
322 };
Lokesh Vutla4ddaa6c2017-08-21 12:50:59 +0530323
324 extcon_usb2: tps659038_usb {
325 compatible = "ti,palmas-usb-vid";
326 ti,enable-vbus-detection;
327 ti,enable-id-detection;
328 /* ID & VBUS GPIOs provided in board dts */
329 };
330 };
331
332 tpic2810: tpic2810@60 {
333 compatible = "ti,tpic2810";
334 reg = <0x60>;
335 gpio-controller;
336 #gpio-cells = <2>;
337 };
338};
339
340&mcspi3 {
341 status = "okay";
342 ti,pindir-d0-out-d1-in;
343
344 sn65hvs882: sn65hvs882@0 {
345 compatible = "pisosr-gpio";
346 gpio-controller;
347 #gpio-cells = <2>;
348
349 reg = <0>;
350 spi-max-frequency = <1000000>;
351 spi-cpol;
Schuyler Patton332dddc2016-06-10 09:35:45 +0530352 };
353};
354
355&uart3 {
356 status = "okay";
357 interrupts-extended = <&crossbar_mpu GIC_SPI 69 IRQ_TYPE_LEVEL_HIGH
358 &dra7_pmx_core 0x248>;
359};
360
361&rtc {
362 status = "okay";
363 ext-clk-src;
364};
365
366&mac {
367 status = "okay";
368 dual_emac;
369};
370
371&cpsw_emac0 {
Grygorii Strashko68d875d2019-08-31 10:30:32 +0300372 phy-handle = <&ethphy0>;
Schuyler Patton332dddc2016-06-10 09:35:45 +0530373 phy-mode = "rgmii";
374 dual_emac_res_vlan = <1>;
375};
376
377&cpsw_emac1 {
Grygorii Strashko68d875d2019-08-31 10:30:32 +0300378 phy-handle = <&ethphy1>;
Schuyler Patton332dddc2016-06-10 09:35:45 +0530379 phy-mode = "rgmii";
380 dual_emac_res_vlan = <2>;
381};
382
Grygorii Strashko68d875d2019-08-31 10:30:32 +0300383&davinci_mdio {
384 ethphy0: ethernet-phy@0 {
385 reg = <0>;
386 };
387
388 ethphy1: ethernet-phy@1 {
389 reg = <1>;
390 };
391};
392
Schuyler Patton332dddc2016-06-10 09:35:45 +0530393&usb2_phy1 {
394 phy-supply = <&ldousb_reg>;
395};
396
397&usb2_phy2 {
398 phy-supply = <&ldousb_reg>;
399};
400
401&usb1 {
402 dr_mode = "host";
403};
404
405&usb2 {
Lokesh Vutla4ddaa6c2017-08-21 12:50:59 +0530406 dr_mode = "peripheral";
407};
408
409&mmc1 {
410 status = "okay";
411 vmmc-supply = <&v3_3d>;
412 vqmmc-supply = <&ldo1_reg>;
413 bus-width = <4>;
414 cd-gpios = <&gpio6 27 GPIO_ACTIVE_LOW>; /* gpio 219 */
Faiz Abbas6b66d2e2019-06-20 15:07:21 +0530415 no-1-8-v;
Schuyler Patton332dddc2016-06-10 09:35:45 +0530416};
417
418&mmc2 {
419 status = "okay";
420 vmmc-supply = <&v3_3d>;
421 bus-width = <8>;
422 ti,non-removable;
423 max-frequency = <96000000>;
Jean-Jacques Hiblote74adaf2018-01-30 16:01:51 +0100424 no-1-8-v;
425 /delete-property/ mmc-hs200-1_8v;
Schuyler Patton332dddc2016-06-10 09:35:45 +0530426};
Vignesh R9af6ce42016-07-29 14:22:31 +0530427
Lokesh Vutla4ddaa6c2017-08-21 12:50:59 +0530428&dcan1 {
429 status = "okay";
430 pinctrl-names = "default", "sleep", "active";
431 pinctrl-0 = <&dcan1_pins_sleep>;
432 pinctrl-1 = <&dcan1_pins_sleep>;
433 pinctrl-2 = <&dcan1_pins_default>;
434};
435
Vignesh R9af6ce42016-07-29 14:22:31 +0530436&qspi {
437 status = "okay";
438
439 spi-max-frequency = <76800000>;
Andrew Davisf8ae3e62023-04-11 13:25:06 -0500440 flash@0 {
Lokesh Vutla4ddaa6c2017-08-21 12:50:59 +0530441 compatible = "s25fl256s1", "jedec,spi-nor";
Vignesh R9af6ce42016-07-29 14:22:31 +0530442 spi-max-frequency = <76800000>;
443 reg = <0>;
444 spi-tx-bus-width = <1>;
445 spi-rx-bus-width = <4>;
446 #address-cells = <1>;
447 #size-cells = <1>;
448
449 /* MTD partition table.
450 * The ROM checks the first four physical blocks
451 * for a valid file to boot and the flash here is
452 * 64KiB block size.
453 */
454 partition@0 {
455 label = "QSPI.SPL";
Andrew Davisf8ae3e62023-04-11 13:25:06 -0500456 reg = <0x00000000 0x00040000>;
Vignesh R9af6ce42016-07-29 14:22:31 +0530457 };
458 partition@1 {
459 label = "QSPI.u-boot";
460 reg = <0x00040000 0x00100000>;
461 };
462 partition@2 {
463 label = "QSPI.u-boot-spl-os";
464 reg = <0x00140000 0x00080000>;
465 };
466 partition@3 {
467 label = "QSPI.u-boot-env";
468 reg = <0x001c0000 0x00010000>;
469 };
470 partition@4 {
471 label = "QSPI.u-boot-env.backup1";
472 reg = <0x001d0000 0x0010000>;
473 };
474 partition@5 {
475 label = "QSPI.kernel";
476 reg = <0x001e0000 0x0800000>;
477 };
478 partition@6 {
479 label = "QSPI.file-system";
480 reg = <0x009e0000 0x01620000>;
481 };
482 };
483};