Commit e8131386dc38b5ea6e67df5532b90f3597f8f628
Committed by
Tom Rini
1 parent
692fcdd800
Exists in
v2017.01-smarct4x
and in
25 other branches
ARM: dts: dra72: add rev C evm support
Add DTS support for dra72 evm Rev C which has the following changes * Two ethernet ports now instead of the single one in rev B. * DP83867 ethernet phy instead of DP838865. Cc: Vignesh R <vigneshr@ti.com> Signed-off-by: Mugunthan V N <mugunthanvnm@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com>
Showing 6 changed files with 601 additions and 667 deletions Side-by-side Diff
arch/arm/dts/Makefile
... | ... | @@ -133,7 +133,8 @@ |
133 | 133 | socfpga_cyclone5_sr1500.dtb \ |
134 | 134 | socfpga_cyclone5_vining_fpga.dtb |
135 | 135 | |
136 | -dtb-$(CONFIG_TARGET_DRA7XX_EVM) += dra72-evm.dtb dra7-evm.dtb | |
136 | +dtb-$(CONFIG_TARGET_DRA7XX_EVM) += dra72-evm.dtb dra7-evm.dtb \ | |
137 | + dra72-evm-revc.dtb | |
137 | 138 | dtb-$(CONFIG_TARGET_AM57XX_EVM) += am57xx-beagle-x15.dtb \ |
138 | 139 | am572x-idk.dtb |
139 | 140 | dtb-$(CONFIG_TARGET_STV0991) += stv0991.dtb |
arch/arm/dts/dra72-evm-common.dtsi
1 | +/* | |
2 | + * Copyright (C) 2016 Texas Instruments Incorporated - http://www.ti.com/ | |
3 | + * | |
4 | + * This program is free software; you can redistribute it and/or modify | |
5 | + * it under the terms of the GNU General Public License version 2 as | |
6 | + * published by the Free Software Foundation. | |
7 | + */ | |
8 | +/dts-v1/; | |
9 | + | |
10 | +#include "dra72x.dtsi" | |
11 | +#include <dt-bindings/gpio/gpio.h> | |
12 | + | |
13 | +/ { | |
14 | + compatible = "ti,dra72-evm", "ti,dra722", "ti,dra72", "ti,dra7"; | |
15 | + | |
16 | + chosen { | |
17 | + stdout-path = &uart1; | |
18 | + tick-timer = &timer2; | |
19 | + }; | |
20 | + | |
21 | + aliases { | |
22 | + display0 = &hdmi0; | |
23 | + }; | |
24 | + | |
25 | + evm_3v3: fixedregulator-evm_3v3 { | |
26 | + compatible = "regulator-fixed"; | |
27 | + regulator-name = "evm_3v3"; | |
28 | + regulator-min-microvolt = <3300000>; | |
29 | + regulator-max-microvolt = <3300000>; | |
30 | + }; | |
31 | + | |
32 | + extcon_usb1: extcon_usb1 { | |
33 | + compatible = "linux,extcon-usb-gpio"; | |
34 | + id-gpio = <&pcf_gpio_21 1 GPIO_ACTIVE_HIGH>; | |
35 | + }; | |
36 | + | |
37 | + extcon_usb2: extcon_usb2 { | |
38 | + compatible = "linux,extcon-usb-gpio"; | |
39 | + id-gpio = <&pcf_gpio_21 2 GPIO_ACTIVE_HIGH>; | |
40 | + }; | |
41 | + | |
42 | + hdmi0: connector { | |
43 | + compatible = "hdmi-connector"; | |
44 | + label = "hdmi"; | |
45 | + | |
46 | + type = "a"; | |
47 | + | |
48 | + port { | |
49 | + hdmi_connector_in: endpoint { | |
50 | + remote-endpoint = <&tpd12s015_out>; | |
51 | + }; | |
52 | + }; | |
53 | + }; | |
54 | + | |
55 | + tpd12s015: encoder { | |
56 | + compatible = "ti,tpd12s015"; | |
57 | + | |
58 | + gpios = <&pcf_hdmi 4 GPIO_ACTIVE_HIGH>, /* P4, CT CP HPD */ | |
59 | + <&pcf_hdmi 5 GPIO_ACTIVE_HIGH>, /* P5, LS OE */ | |
60 | + <&gpio7 12 GPIO_ACTIVE_HIGH>; /* gpio7_12/sp1_cs2, HPD */ | |
61 | + | |
62 | + ports { | |
63 | + #address-cells = <1>; | |
64 | + #size-cells = <0>; | |
65 | + | |
66 | + port@0 { | |
67 | + reg = <0>; | |
68 | + | |
69 | + tpd12s015_in: endpoint { | |
70 | + remote-endpoint = <&hdmi_out>; | |
71 | + }; | |
72 | + }; | |
73 | + | |
74 | + port@1 { | |
75 | + reg = <1>; | |
76 | + | |
77 | + tpd12s015_out: endpoint { | |
78 | + remote-endpoint = <&hdmi_connector_in>; | |
79 | + }; | |
80 | + }; | |
81 | + }; | |
82 | + }; | |
83 | +}; | |
84 | + | |
85 | +&dra7_pmx_core { | |
86 | + mmc1_pins_default: mmc1_pins_default { | |
87 | + pinctrl-single,pins = < | |
88 | + 0x354 (PIN_INPUT_PULLUP | MUX_MODE0) /* mmc1_clk.clk */ | |
89 | + 0x358 (PIN_INPUT_PULLUP | MUX_MODE0) /* mmc1_cmd.cmd */ | |
90 | + 0x35c (PIN_INPUT_PULLUP | MUX_MODE0) /* mmc1_dat0.dat0 */ | |
91 | + 0x360 (PIN_INPUT_PULLUP | MUX_MODE0) /* mmc1_dat1.dat1 */ | |
92 | + 0x364 (PIN_INPUT_PULLUP | MUX_MODE0) /* mmc1_dat2.dat2 */ | |
93 | + 0x368 (PIN_INPUT_PULLUP | MUX_MODE0) /* mmc1_dat3.dat3 */ | |
94 | + >; | |
95 | + }; | |
96 | + | |
97 | + mmc2_pins_default: mmc2_pins_default { | |
98 | + pinctrl-single,pins = < | |
99 | + 0x9c (PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_a23.mmc2_clk */ | |
100 | + 0xb0 (PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_cs1.mmc2_cmd */ | |
101 | + 0xa0 (PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_a24.mmc2_dat0 */ | |
102 | + 0xa4 (PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_a25.mmc2_dat1 */ | |
103 | + 0xa8 (PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_a26.mmc2_dat2 */ | |
104 | + 0xac (PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_a27.mmc2_dat3 */ | |
105 | + 0x8c (PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_a19.mmc2_dat4 */ | |
106 | + 0x90 (PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_a20.mmc2_dat5 */ | |
107 | + 0x94 (PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_a21.mmc2_dat6 */ | |
108 | + 0x98 (PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_a22.mmc2_dat7 */ | |
109 | + >; | |
110 | + }; | |
111 | + | |
112 | + dcan1_pins_default: dcan1_pins_default { | |
113 | + pinctrl-single,pins = < | |
114 | + 0x3d0 (PIN_OUTPUT_PULLUP | MUX_MODE0) /* dcan1_tx */ | |
115 | + 0x418 (PULL_UP | MUX_MODE1) /* wakeup0.dcan1_rx */ | |
116 | + >; | |
117 | + }; | |
118 | + | |
119 | + dcan1_pins_sleep: dcan1_pins_sleep { | |
120 | + pinctrl-single,pins = < | |
121 | + 0x3d0 (MUX_MODE15 | PULL_UP) /* dcan1_tx.off */ | |
122 | + 0x418 (MUX_MODE15 | PULL_UP) /* wakeup0.off */ | |
123 | + >; | |
124 | + }; | |
125 | +}; | |
126 | + | |
127 | +&i2c1 { | |
128 | + status = "okay"; | |
129 | + clock-frequency = <400000>; | |
130 | + | |
131 | + tps65917: tps65917@58 { | |
132 | + compatible = "ti,tps65917"; | |
133 | + reg = <0x58>; | |
134 | + | |
135 | + interrupts = <GIC_SPI 2 IRQ_TYPE_NONE>; /* IRQ_SYS_1N */ | |
136 | + interrupt-controller; | |
137 | + #interrupt-cells = <2>; | |
138 | + | |
139 | + ti,system-power-controller; | |
140 | + | |
141 | + tps65917_pmic { | |
142 | + compatible = "ti,tps65917-pmic"; | |
143 | + | |
144 | + tps65917_regulators: regulators { | |
145 | + smps1_reg: smps1 { | |
146 | + /* VDD_MPU */ | |
147 | + regulator-name = "smps1"; | |
148 | + regulator-min-microvolt = <850000>; | |
149 | + regulator-max-microvolt = <1250000>; | |
150 | + regulator-always-on; | |
151 | + regulator-boot-on; | |
152 | + }; | |
153 | + | |
154 | + smps2_reg: smps2 { | |
155 | + /* VDD_CORE */ | |
156 | + regulator-name = "smps2"; | |
157 | + regulator-min-microvolt = <850000>; | |
158 | + regulator-max-microvolt = <1060000>; | |
159 | + regulator-boot-on; | |
160 | + regulator-always-on; | |
161 | + }; | |
162 | + | |
163 | + smps3_reg: smps3 { | |
164 | + /* VDD_GPU IVA DSPEVE */ | |
165 | + regulator-name = "smps3"; | |
166 | + regulator-min-microvolt = <850000>; | |
167 | + regulator-max-microvolt = <1250000>; | |
168 | + regulator-boot-on; | |
169 | + regulator-always-on; | |
170 | + }; | |
171 | + | |
172 | + smps4_reg: smps4 { | |
173 | + /* VDDS1V8 */ | |
174 | + regulator-name = "smps4"; | |
175 | + regulator-min-microvolt = <1800000>; | |
176 | + regulator-max-microvolt = <1800000>; | |
177 | + regulator-always-on; | |
178 | + regulator-boot-on; | |
179 | + }; | |
180 | + | |
181 | + smps5_reg: smps5 { | |
182 | + /* VDD_DDR */ | |
183 | + regulator-name = "smps5"; | |
184 | + regulator-min-microvolt = <1350000>; | |
185 | + regulator-max-microvolt = <1350000>; | |
186 | + regulator-boot-on; | |
187 | + regulator-always-on; | |
188 | + }; | |
189 | + | |
190 | + ldo1_reg: ldo1 { | |
191 | + /* LDO1_OUT --> SDIO */ | |
192 | + regulator-name = "ldo1"; | |
193 | + regulator-min-microvolt = <1800000>; | |
194 | + regulator-max-microvolt = <3300000>; | |
195 | + regulator-always-on; | |
196 | + regulator-boot-on; | |
197 | + regulator-allow-bypass; | |
198 | + }; | |
199 | + | |
200 | + ldo3_reg: ldo3 { | |
201 | + /* VDDA_1V8_PHY */ | |
202 | + regulator-name = "ldo3"; | |
203 | + regulator-min-microvolt = <1800000>; | |
204 | + regulator-max-microvolt = <1800000>; | |
205 | + regulator-boot-on; | |
206 | + regulator-always-on; | |
207 | + }; | |
208 | + | |
209 | + ldo5_reg: ldo5 { | |
210 | + /* VDDA_1V8_PLL */ | |
211 | + regulator-name = "ldo5"; | |
212 | + regulator-min-microvolt = <1800000>; | |
213 | + regulator-max-microvolt = <1800000>; | |
214 | + regulator-always-on; | |
215 | + regulator-boot-on; | |
216 | + }; | |
217 | + | |
218 | + ldo4_reg: ldo4 { | |
219 | + /* VDDA_3V_USB: VDDA_USBHS33 */ | |
220 | + regulator-name = "ldo4"; | |
221 | + regulator-min-microvolt = <3300000>; | |
222 | + regulator-max-microvolt = <3300000>; | |
223 | + regulator-boot-on; | |
224 | + }; | |
225 | + }; | |
226 | + }; | |
227 | + | |
228 | + tps65917_power_button { | |
229 | + compatible = "ti,palmas-pwrbutton"; | |
230 | + interrupt-parent = <&tps65917>; | |
231 | + interrupts = <1 IRQ_TYPE_NONE>; | |
232 | + wakeup-source; | |
233 | + ti,palmas-long-press-seconds = <6>; | |
234 | + }; | |
235 | + }; | |
236 | + | |
237 | + pcf_gpio_21: gpio@21 { | |
238 | + compatible = "ti,pcf8575"; | |
239 | + u-boot,i2c-offset-len = <0>; | |
240 | + reg = <0x21>; | |
241 | + lines-initial-states = <0x1408>; | |
242 | + gpio-controller; | |
243 | + #gpio-cells = <2>; | |
244 | + | |
245 | + interrupt-controller; | |
246 | + #interrupt-cells = <2>; | |
247 | + }; | |
248 | +}; | |
249 | + | |
250 | +&i2c5 { | |
251 | + status = "okay"; | |
252 | + clock-frequency = <400000>; | |
253 | + | |
254 | + pcf_hdmi: pcf8575@26 { | |
255 | + compatible = "nxp,pcf8575"; | |
256 | + u-boot,i2c-offset-len = <0>; | |
257 | + reg = <0x26>; | |
258 | + gpio-controller; | |
259 | + #gpio-cells = <2>; | |
260 | + /* | |
261 | + * initial state is used here to keep the mdio interface | |
262 | + * selected on RU89 through SEL_VIN4_MUX_S0, VIN2_S1 and | |
263 | + * VIN2_S0 driven high otherwise Ethernet stops working | |
264 | + * VIN6_SEL_S0 is low, thus selecting McASP3 over VIN6 | |
265 | + */ | |
266 | + lines-initial-states = <0x0f2b>; | |
267 | + | |
268 | + p1 { | |
269 | + /* vin6_sel_s0: high: VIN6, low: audio */ | |
270 | + gpio-hog; | |
271 | + gpios = <1 GPIO_ACTIVE_HIGH>; | |
272 | + output-low; | |
273 | + line-name = "vin6_sel_s0"; | |
274 | + }; | |
275 | + }; | |
276 | +}; | |
277 | + | |
278 | +&uart1 { | |
279 | + status = "okay"; | |
280 | + interrupts-extended = <&crossbar_mpu GIC_SPI 67 IRQ_TYPE_LEVEL_HIGH>, | |
281 | + <&dra7_pmx_core 0x3e0>; | |
282 | +}; | |
283 | + | |
284 | +&elm { | |
285 | + status = "okay"; | |
286 | +}; | |
287 | + | |
288 | +&gpmc { | |
289 | + /* | |
290 | + * For the existing IOdelay configuration via U-Boot we don't | |
291 | + * support NAND on dra72-evm. Keep it disabled. Enabling it | |
292 | + * requires a different configuration by U-Boot. | |
293 | + */ | |
294 | + status = "disabled"; | |
295 | + ranges = <0 0 0x08000000 0x01000000>; /* minimum GPMC partition = 16MB */ | |
296 | + nand@0,0 { | |
297 | + /* To use NAND, DIP switch SW5 must be set like so: | |
298 | + * SW5.1 (NAND_SELn) = ON (LOW) | |
299 | + * SW5.9 (GPMC_WPN) = OFF (HIGH) | |
300 | + */ | |
301 | + compatible = "ti,omap2-nand"; | |
302 | + reg = <0 0 4>; /* device IO registers */ | |
303 | + interrupt-parent = <&gpmc>; | |
304 | + interrupts = <0 IRQ_TYPE_NONE>, /* fifoevent */ | |
305 | + <1 IRQ_TYPE_NONE>; /* termcount */ | |
306 | + rb-gpios = <&gpmc 0 GPIO_ACTIVE_HIGH>; /* gpmc_wait0 pin */ /* device IO registers */ | |
307 | + ti,nand-ecc-opt = "bch8"; | |
308 | + ti,elm-id = <&elm>; | |
309 | + nand-bus-width = <16>; | |
310 | + gpmc,device-width = <2>; | |
311 | + gpmc,sync-clk-ps = <0>; | |
312 | + gpmc,cs-on-ns = <0>; | |
313 | + gpmc,cs-rd-off-ns = <80>; | |
314 | + gpmc,cs-wr-off-ns = <80>; | |
315 | + gpmc,adv-on-ns = <0>; | |
316 | + gpmc,adv-rd-off-ns = <60>; | |
317 | + gpmc,adv-wr-off-ns = <60>; | |
318 | + gpmc,we-on-ns = <10>; | |
319 | + gpmc,we-off-ns = <50>; | |
320 | + gpmc,oe-on-ns = <4>; | |
321 | + gpmc,oe-off-ns = <40>; | |
322 | + gpmc,access-ns = <40>; | |
323 | + gpmc,wr-access-ns = <80>; | |
324 | + gpmc,rd-cycle-ns = <80>; | |
325 | + gpmc,wr-cycle-ns = <80>; | |
326 | + gpmc,bus-turnaround-ns = <0>; | |
327 | + gpmc,cycle2cycle-delay-ns = <0>; | |
328 | + gpmc,clk-activation-ns = <0>; | |
329 | + gpmc,wait-monitoring-ns = <0>; | |
330 | + gpmc,wr-data-mux-bus-ns = <0>; | |
331 | + /* MTD partition table */ | |
332 | + /* All SPL-* partitions are sized to minimal length | |
333 | + * which can be independently programmable. For | |
334 | + * NAND flash this is equal to size of erase-block */ | |
335 | + #address-cells = <1>; | |
336 | + #size-cells = <1>; | |
337 | + partition@0 { | |
338 | + label = "NAND.SPL"; | |
339 | + reg = <0x00000000 0x000020000>; | |
340 | + }; | |
341 | + partition@1 { | |
342 | + label = "NAND.SPL.backup1"; | |
343 | + reg = <0x00020000 0x00020000>; | |
344 | + }; | |
345 | + partition@2 { | |
346 | + label = "NAND.SPL.backup2"; | |
347 | + reg = <0x00040000 0x00020000>; | |
348 | + }; | |
349 | + partition@3 { | |
350 | + label = "NAND.SPL.backup3"; | |
351 | + reg = <0x00060000 0x00020000>; | |
352 | + }; | |
353 | + partition@4 { | |
354 | + label = "NAND.u-boot-spl-os"; | |
355 | + reg = <0x00080000 0x00040000>; | |
356 | + }; | |
357 | + partition@5 { | |
358 | + label = "NAND.u-boot"; | |
359 | + reg = <0x000c0000 0x00100000>; | |
360 | + }; | |
361 | + partition@6 { | |
362 | + label = "NAND.u-boot-env"; | |
363 | + reg = <0x001c0000 0x00020000>; | |
364 | + }; | |
365 | + partition@7 { | |
366 | + label = "NAND.u-boot-env.backup1"; | |
367 | + reg = <0x001e0000 0x00020000>; | |
368 | + }; | |
369 | + partition@8 { | |
370 | + label = "NAND.kernel"; | |
371 | + reg = <0x00200000 0x00800000>; | |
372 | + }; | |
373 | + partition@9 { | |
374 | + label = "NAND.file-system"; | |
375 | + reg = <0x00a00000 0x0f600000>; | |
376 | + }; | |
377 | + }; | |
378 | +}; | |
379 | + | |
380 | +&usb2_phy1 { | |
381 | + phy-supply = <&ldo4_reg>; | |
382 | +}; | |
383 | + | |
384 | +&usb2_phy2 { | |
385 | + phy-supply = <&ldo4_reg>; | |
386 | +}; | |
387 | + | |
388 | +&omap_dwc3_1 { | |
389 | + extcon = <&extcon_usb1>; | |
390 | +}; | |
391 | + | |
392 | +&omap_dwc3_2 { | |
393 | + extcon = <&extcon_usb2>; | |
394 | +}; | |
395 | + | |
396 | +&usb1 { | |
397 | + dr_mode = "otg"; | |
398 | +}; | |
399 | + | |
400 | +&usb2 { | |
401 | + dr_mode = "host"; | |
402 | +}; | |
403 | + | |
404 | +&mmc1 { | |
405 | + status = "okay"; | |
406 | + pinctrl-names = "default"; | |
407 | + pinctrl-0 = <&mmc1_pins_default>; | |
408 | + vmmc_aux-supply = <&ldo1_reg>; | |
409 | + bus-width = <4>; | |
410 | + /* | |
411 | + * SDCD signal is not being used here - using the fact that GPIO mode | |
412 | + * is a viable alternative | |
413 | + */ | |
414 | + cd-gpios = <&gpio6 27 GPIO_ACTIVE_LOW>; | |
415 | + max-frequency = <192000000>; | |
416 | +}; | |
417 | + | |
418 | +&mmc2 { | |
419 | + /* SW5-3 in ON position */ | |
420 | + status = "okay"; | |
421 | + pinctrl-names = "default"; | |
422 | + pinctrl-0 = <&mmc2_pins_default>; | |
423 | + | |
424 | + vmmc-supply = <&evm_3v3>; | |
425 | + bus-width = <8>; | |
426 | + ti,non-removable; | |
427 | + max-frequency = <192000000>; | |
428 | +}; | |
429 | + | |
430 | +&mac { | |
431 | + status = "okay"; | |
432 | +}; | |
433 | + | |
434 | +&dcan1 { | |
435 | + status = "ok"; | |
436 | +}; | |
437 | + | |
438 | +&qspi { | |
439 | + status = "okay"; | |
440 | + | |
441 | + spi-max-frequency = <76800000>; | |
442 | + m25p80@0 { | |
443 | + compatible = "s25fl256s1", "spi-flash"; | |
444 | + spi-max-frequency = <64000000>; | |
445 | + reg = <0>; | |
446 | + spi-tx-bus-width = <1>; | |
447 | + spi-rx-bus-width = <4>; | |
448 | + #address-cells = <1>; | |
449 | + #size-cells = <1>; | |
450 | + | |
451 | + /* MTD partition table. | |
452 | + * The ROM checks the first four physical blocks | |
453 | + * for a valid file to boot and the flash here is | |
454 | + * 64KiB block size. | |
455 | + */ | |
456 | + partition@0 { | |
457 | + label = "QSPI.SPL"; | |
458 | + reg = <0x00000000 0x000010000>; | |
459 | + }; | |
460 | + partition@1 { | |
461 | + label = "QSPI.SPL.backup1"; | |
462 | + reg = <0x00010000 0x00010000>; | |
463 | + }; | |
464 | + partition@2 { | |
465 | + label = "QSPI.SPL.backup2"; | |
466 | + reg = <0x00020000 0x00010000>; | |
467 | + }; | |
468 | + partition@3 { | |
469 | + label = "QSPI.SPL.backup3"; | |
470 | + reg = <0x00030000 0x00010000>; | |
471 | + }; | |
472 | + partition@4 { | |
473 | + label = "QSPI.u-boot"; | |
474 | + reg = <0x00040000 0x00100000>; | |
475 | + }; | |
476 | + partition@5 { | |
477 | + label = "QSPI.u-boot-spl-os"; | |
478 | + reg = <0x00140000 0x00080000>; | |
479 | + }; | |
480 | + partition@6 { | |
481 | + label = "QSPI.u-boot-env"; | |
482 | + reg = <0x001c0000 0x00010000>; | |
483 | + }; | |
484 | + partition@7 { | |
485 | + label = "QSPI.u-boot-env.backup1"; | |
486 | + reg = <0x001d0000 0x0010000>; | |
487 | + }; | |
488 | + partition@8 { | |
489 | + label = "QSPI.kernel"; | |
490 | + reg = <0x001e0000 0x0800000>; | |
491 | + }; | |
492 | + partition@9 { | |
493 | + label = "QSPI.file-system"; | |
494 | + reg = <0x009e0000 0x01620000>; | |
495 | + }; | |
496 | + }; | |
497 | +}; | |
498 | + | |
499 | +&dss { | |
500 | + status = "ok"; | |
501 | + | |
502 | + vdda_video-supply = <&ldo5_reg>; | |
503 | +}; | |
504 | + | |
505 | +&hdmi { | |
506 | + status = "ok"; | |
507 | + | |
508 | + port { | |
509 | + hdmi_out: endpoint { | |
510 | + remote-endpoint = <&tpd12s015_in>; | |
511 | + }; | |
512 | + }; | |
513 | +}; |
arch/arm/dts/dra72-evm-revc.dts
1 | +/* | |
2 | + * Copyright (C) 2016 Texas Instruments Incorporated - http://www.ti.com/ | |
3 | + * | |
4 | + * This program is free software; you can redistribute it and/or modify | |
5 | + * it under the terms of the GNU General Public License version 2 as | |
6 | + * published by the Free Software Foundation. | |
7 | + */ | |
8 | +#include "dra72-evm-common.dtsi" | |
9 | +#include <dt-bindings/net/ti-dp83867.h> | |
10 | + | |
11 | +/ { | |
12 | + model = "TI DRA722 Rev C EVM"; | |
13 | + | |
14 | + memory { | |
15 | + device_type = "memory"; | |
16 | + reg = <0x0 0x80000000 0x0 0x80000000>; /* 2GB */ | |
17 | + }; | |
18 | +}; | |
19 | + | |
20 | +&tps65917_regulators { | |
21 | + ldo2_reg: ldo2 { | |
22 | + /* LDO2_OUT --> VDDA_1V8_PHY2 */ | |
23 | + regulator-name = "ldo2"; | |
24 | + regulator-min-microvolt = <1800000>; | |
25 | + regulator-max-microvolt = <1800000>; | |
26 | + regulator-always-on; | |
27 | + regulator-boot-on; | |
28 | + }; | |
29 | +}; | |
30 | + | |
31 | +&hdmi { | |
32 | + vdda_video-supply = <&ldo2_reg>; | |
33 | +}; | |
34 | + | |
35 | +&mac { | |
36 | + mode-gpios = <&pcf_gpio_21 4 GPIO_ACTIVE_LOW>, | |
37 | + <&pcf_hdmi 9 GPIO_ACTIVE_LOW>, /* P11 */ | |
38 | + <&pcf_hdmi 10 GPIO_ACTIVE_LOW>; /* P12 */ | |
39 | + dual_emac; | |
40 | +}; | |
41 | + | |
42 | +&cpsw_emac0 { | |
43 | + phy-handle = <&dp83867_0>; | |
44 | + phy-mode = "rgmii-id"; | |
45 | + dual_emac_res_vlan = <1>; | |
46 | +}; | |
47 | + | |
48 | +&cpsw_emac1 { | |
49 | + phy-handle = <&dp83867_1>; | |
50 | + phy-mode = "rgmii-id"; | |
51 | + dual_emac_res_vlan = <2>; | |
52 | +}; | |
53 | + | |
54 | +&davinci_mdio { | |
55 | + dp83867_0: ethernet-phy@2 { | |
56 | + reg = <2>; | |
57 | + ti,rx-internal-delay = <DP83867_RGMIIDCTL_2_25_NS>; | |
58 | + ti,tx-internal-delay = <DP83867_RGMIIDCTL_250_PS>; | |
59 | + ti,fifo-depth = <DP83867_PHYCR_FIFO_DEPTH_8_B_NIB>; | |
60 | + ti,min-output-imepdance; | |
61 | + }; | |
62 | + | |
63 | + dp83867_1: ethernet-phy@3 { | |
64 | + reg = <3>; | |
65 | + ti,rx-internal-delay = <DP83867_RGMIIDCTL_2_25_NS>; | |
66 | + ti,tx-internal-delay = <DP83867_RGMIIDCTL_250_PS>; | |
67 | + ti,fifo-depth = <DP83867_PHYCR_FIFO_DEPTH_8_B_NIB>; | |
68 | + ti,min-output-imepdance; | |
69 | + }; | |
70 | +}; |
arch/arm/dts/dra72-evm.dts
... | ... | @@ -5,674 +5,24 @@ |
5 | 5 | * it under the terms of the GNU General Public License version 2 as |
6 | 6 | * published by the Free Software Foundation. |
7 | 7 | */ |
8 | -/dts-v1/; | |
8 | +#include <dra72-evm-common.dtsi> | |
9 | 9 | |
10 | -#include "dra72x.dtsi" | |
11 | -#include <dt-bindings/gpio/gpio.h> | |
12 | - | |
13 | 10 | / { |
14 | 11 | model = "TI DRA722"; |
15 | 12 | compatible = "ti,dra72-evm", "ti,dra722", "ti,dra72", "ti,dra7"; |
16 | 13 | |
17 | - chosen { | |
18 | - stdout-path = &uart1; | |
19 | - tick-timer = &timer2; | |
20 | - }; | |
21 | - | |
22 | 14 | memory { |
23 | 15 | device_type = "memory"; |
24 | 16 | reg = <0x80000000 0x40000000>; /* 1024 MB */ |
25 | 17 | }; |
26 | - | |
27 | - aliases { | |
28 | - display0 = &hdmi0; | |
29 | - }; | |
30 | - | |
31 | - evm_3v3: fixedregulator-evm_3v3 { | |
32 | - compatible = "regulator-fixed"; | |
33 | - regulator-name = "evm_3v3"; | |
34 | - regulator-min-microvolt = <3300000>; | |
35 | - regulator-max-microvolt = <3300000>; | |
36 | - }; | |
37 | - | |
38 | - evm_3v3_sd: fixedregulator-sd { | |
39 | - compatible = "regulator-fixed"; | |
40 | - regulator-name = "evm_3v3_sd"; | |
41 | - regulator-min-microvolt = <3300000>; | |
42 | - regulator-max-microvolt = <3300000>; | |
43 | - enable-active-high; | |
44 | - gpio = <&pcf_gpio_21 5 GPIO_ACTIVE_HIGH>; | |
45 | - }; | |
46 | - | |
47 | - extcon_usb1: extcon_usb1 { | |
48 | - compatible = "linux,extcon-usb-gpio"; | |
49 | - id-gpio = <&pcf_gpio_21 1 GPIO_ACTIVE_HIGH>; | |
50 | - }; | |
51 | - | |
52 | - extcon_usb2: extcon_usb2 { | |
53 | - compatible = "linux,extcon-usb-gpio"; | |
54 | - id-gpio = <&pcf_gpio_21 2 GPIO_ACTIVE_HIGH>; | |
55 | - }; | |
56 | - | |
57 | - hdmi0: connector { | |
58 | - compatible = "hdmi-connector"; | |
59 | - label = "hdmi"; | |
60 | - | |
61 | - type = "a"; | |
62 | - | |
63 | - port { | |
64 | - hdmi_connector_in: endpoint { | |
65 | - remote-endpoint = <&tpd12s015_out>; | |
66 | - }; | |
67 | - }; | |
68 | - }; | |
69 | - | |
70 | - tpd12s015: encoder { | |
71 | - compatible = "ti,tpd12s015"; | |
72 | - | |
73 | - pinctrl-names = "default"; | |
74 | - pinctrl-0 = <&tpd12s015_pins>; | |
75 | - | |
76 | - gpios = <&pcf_hdmi 4 GPIO_ACTIVE_HIGH>, /* P4, CT CP HPD */ | |
77 | - <&pcf_hdmi 5 GPIO_ACTIVE_HIGH>, /* P5, LS OE */ | |
78 | - <&gpio7 12 GPIO_ACTIVE_HIGH>; /* gpio7_12/sp1_cs2, HPD */ | |
79 | - | |
80 | - ports { | |
81 | - #address-cells = <1>; | |
82 | - #size-cells = <0>; | |
83 | - | |
84 | - port@0 { | |
85 | - reg = <0>; | |
86 | - | |
87 | - tpd12s015_in: endpoint { | |
88 | - remote-endpoint = <&hdmi_out>; | |
89 | - }; | |
90 | - }; | |
91 | - | |
92 | - port@1 { | |
93 | - reg = <1>; | |
94 | - | |
95 | - tpd12s015_out: endpoint { | |
96 | - remote-endpoint = <&hdmi_connector_in>; | |
97 | - }; | |
98 | - }; | |
99 | - }; | |
100 | - }; | |
101 | 18 | }; |
102 | 19 | |
103 | -&dra7_pmx_core { | |
104 | - i2c1_pins: pinmux_i2c1_pins { | |
105 | - pinctrl-single,pins = < | |
106 | - 0x400 (PIN_INPUT | MUX_MODE0) /* i2c1_sda.i2c1_sda */ | |
107 | - 0x404 (PIN_INPUT | MUX_MODE0) /* i2c1_scl.i2c1_scl */ | |
108 | - >; | |
109 | - }; | |
110 | 20 | |
111 | - i2c5_pins: pinmux_i2c5_pins { | |
112 | - pinctrl-single,pins = < | |
113 | - 0x2b4 (PIN_INPUT | MUX_MODE10) /* mcasp1_axr0.i2c5_sda */ | |
114 | - 0x2b8 (PIN_INPUT | MUX_MODE10) /* mcasp1_axr1.i2c5_scl */ | |
115 | - >; | |
116 | - }; | |
117 | - | |
118 | - nand_default: nand_default { | |
119 | - pinctrl-single,pins = < | |
120 | - 0x0 (PIN_INPUT | MUX_MODE0) /* gpmc_ad0 */ | |
121 | - 0x4 (PIN_INPUT | MUX_MODE0) /* gpmc_ad1 */ | |
122 | - 0x8 (PIN_INPUT | MUX_MODE0) /* gpmc_ad2 */ | |
123 | - 0xc (PIN_INPUT | MUX_MODE0) /* gpmc_ad3 */ | |
124 | - 0x10 (PIN_INPUT | MUX_MODE0) /* gpmc_ad4 */ | |
125 | - 0x14 (PIN_INPUT | MUX_MODE0) /* gpmc_ad5 */ | |
126 | - 0x18 (PIN_INPUT | MUX_MODE0) /* gpmc_ad6 */ | |
127 | - 0x1c (PIN_INPUT | MUX_MODE0) /* gpmc_ad7 */ | |
128 | - 0x20 (PIN_INPUT | MUX_MODE0) /* gpmc_ad8 */ | |
129 | - 0x24 (PIN_INPUT | MUX_MODE0) /* gpmc_ad9 */ | |
130 | - 0x28 (PIN_INPUT | MUX_MODE0) /* gpmc_ad10 */ | |
131 | - 0x2c (PIN_INPUT | MUX_MODE0) /* gpmc_ad11 */ | |
132 | - 0x30 (PIN_INPUT | MUX_MODE0) /* gpmc_ad12 */ | |
133 | - 0x34 (PIN_INPUT | MUX_MODE0) /* gpmc_ad13 */ | |
134 | - 0x38 (PIN_INPUT | MUX_MODE0) /* gpmc_ad14 */ | |
135 | - 0x3c (PIN_INPUT | MUX_MODE0) /* gpmc_ad15 */ | |
136 | - 0xb4 (PIN_OUTPUT | MUX_MODE0) /* gpmc_cs0 */ | |
137 | - 0xc4 (PIN_OUTPUT | MUX_MODE0) /* gpmc_advn_ale */ | |
138 | - 0xcc (PIN_OUTPUT | MUX_MODE0) /* gpmc_wen */ | |
139 | - 0xc8 (PIN_OUTPUT | MUX_MODE0) /* gpmc_oen_ren */ | |
140 | - 0xd0 (PIN_OUTPUT | MUX_MODE0) /* gpmc_ben0 */ | |
141 | - 0xd8 (PIN_INPUT | MUX_MODE0) /* gpmc_wait0 */ | |
142 | - >; | |
143 | - }; | |
144 | - | |
145 | - usb1_pins: pinmux_usb1_pins { | |
146 | - pinctrl-single,pins = < | |
147 | - 0x280 (PIN_INPUT_SLEW | MUX_MODE0) /* usb1_drvvbus */ | |
148 | - >; | |
149 | - }; | |
150 | - | |
151 | - usb2_pins: pinmux_usb2_pins { | |
152 | - pinctrl-single,pins = < | |
153 | - 0x284 (PIN_INPUT_SLEW | MUX_MODE0) /* usb2_drvvbus */ | |
154 | - >; | |
155 | - }; | |
156 | - | |
157 | - tps65917_pins_default: tps65917_pins_default { | |
158 | - pinctrl-single,pins = < | |
159 | - 0x424 (PIN_INPUT_PULLUP | MUX_MODE1) /* wakeup3.sys_nirq1 */ | |
160 | - >; | |
161 | - }; | |
162 | - | |
163 | - mmc1_pins_default: mmc1_pins_default { | |
164 | - pinctrl-single,pins = < | |
165 | - 0x36c (PIN_INPUT | MUX_MODE14) /* mmc1sdcd.gpio219 */ | |
166 | - 0x354 (PIN_INPUT_PULLUP | MUX_MODE0) /* mmc1_clk.clk */ | |
167 | - 0x358 (PIN_INPUT_PULLUP | MUX_MODE0) /* mmc1_cmd.cmd */ | |
168 | - 0x35c (PIN_INPUT_PULLUP | MUX_MODE0) /* mmc1_dat0.dat0 */ | |
169 | - 0x360 (PIN_INPUT_PULLUP | MUX_MODE0) /* mmc1_dat1.dat1 */ | |
170 | - 0x364 (PIN_INPUT_PULLUP | MUX_MODE0) /* mmc1_dat2.dat2 */ | |
171 | - 0x368 (PIN_INPUT_PULLUP | MUX_MODE0) /* mmc1_dat3.dat3 */ | |
172 | - >; | |
173 | - }; | |
174 | - | |
175 | - mmc2_pins_default: mmc2_pins_default { | |
176 | - pinctrl-single,pins = < | |
177 | - 0x9c (PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_a23.mmc2_clk */ | |
178 | - 0xb0 (PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_cs1.mmc2_cmd */ | |
179 | - 0xa0 (PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_a24.mmc2_dat0 */ | |
180 | - 0xa4 (PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_a25.mmc2_dat1 */ | |
181 | - 0xa8 (PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_a26.mmc2_dat2 */ | |
182 | - 0xac (PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_a27.mmc2_dat3 */ | |
183 | - 0x8c (PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_a19.mmc2_dat4 */ | |
184 | - 0x90 (PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_a20.mmc2_dat5 */ | |
185 | - 0x94 (PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_a21.mmc2_dat6 */ | |
186 | - 0x98 (PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_a22.mmc2_dat7 */ | |
187 | - >; | |
188 | - }; | |
189 | - | |
190 | - dcan1_pins_default: dcan1_pins_default { | |
191 | - pinctrl-single,pins = < | |
192 | - 0x3d0 (PIN_OUTPUT_PULLUP | MUX_MODE0) /* dcan1_tx */ | |
193 | - 0x418 (PULL_UP | MUX_MODE1) /* wakeup0.dcan1_rx */ | |
194 | - >; | |
195 | - }; | |
196 | - | |
197 | - dcan1_pins_sleep: dcan1_pins_sleep { | |
198 | - pinctrl-single,pins = < | |
199 | - 0x3d0 (MUX_MODE15 | PULL_UP) /* dcan1_tx.off */ | |
200 | - 0x418 (MUX_MODE15 | PULL_UP) /* wakeup0.off */ | |
201 | - >; | |
202 | - }; | |
203 | - | |
204 | - qspi1_pins: pinmux_qspi1_pins { | |
205 | - pinctrl-single,pins = < | |
206 | - 0x74 (PIN_OUTPUT | MUX_MODE1) /* gpmc_a13.qspi1_rtclk */ | |
207 | - 0x78 (PIN_INPUT | MUX_MODE1) /* gpmc_a14.qspi1_d3 */ | |
208 | - 0x7c (PIN_INPUT | MUX_MODE1) /* gpmc_a15.qspi1_d2 */ | |
209 | - 0x80 (PIN_INPUT | MUX_MODE1) /* gpmc_a16.qspi1_d1 */ | |
210 | - 0x84 (PIN_INPUT | MUX_MODE1) /* gpmc_a17.qspi1_d0 */ | |
211 | - 0x88 (PIN_OUTPUT | MUX_MODE1) /* qpmc_a18.qspi1_sclk */ | |
212 | - 0xb8 (PIN_OUTPUT | MUX_MODE1) /* gpmc_cs2.qspi1_cs0 */ | |
213 | - >; | |
214 | - }; | |
215 | - | |
216 | - hdmi_pins: pinmux_hdmi_pins { | |
217 | - pinctrl-single,pins = < | |
218 | - 0x408 (PIN_INPUT | MUX_MODE1) /* i2c2_sda.hdmi1_ddc_scl */ | |
219 | - 0x40c (PIN_INPUT | MUX_MODE1) /* i2c2_scl.hdmi1_ddc_sda */ | |
220 | - >; | |
221 | - }; | |
222 | - | |
223 | - tpd12s015_pins: pinmux_tpd12s015_pins { | |
224 | - pinctrl-single,pins = < | |
225 | - 0x3b8 (PIN_INPUT_PULLDOWN | MUX_MODE14) /* gpio7_12 HPD */ | |
226 | - >; | |
227 | - }; | |
228 | -}; | |
229 | - | |
230 | -&i2c1 { | |
231 | - status = "okay"; | |
232 | - pinctrl-names = "default"; | |
233 | - pinctrl-0 = <&i2c1_pins>; | |
234 | - clock-frequency = <400000>; | |
235 | - | |
236 | - tps65917: tps65917@58 { | |
237 | - compatible = "ti,tps65917"; | |
238 | - reg = <0x58>; | |
239 | - | |
240 | - pinctrl-names = "default"; | |
241 | - pinctrl-0 = <&tps65917_pins_default>; | |
242 | - | |
243 | - interrupts = <GIC_SPI 2 IRQ_TYPE_NONE>; /* IRQ_SYS_1N */ | |
244 | - interrupt-controller; | |
245 | - #interrupt-cells = <2>; | |
246 | - | |
247 | - ti,system-power-controller; | |
248 | - | |
249 | - tps65917_pmic { | |
250 | - compatible = "ti,tps65917-pmic"; | |
251 | - | |
252 | - regulators { | |
253 | - smps1_reg: smps1 { | |
254 | - /* VDD_MPU */ | |
255 | - regulator-name = "smps1"; | |
256 | - regulator-min-microvolt = <850000>; | |
257 | - regulator-max-microvolt = <1250000>; | |
258 | - regulator-always-on; | |
259 | - regulator-boot-on; | |
260 | - }; | |
261 | - | |
262 | - smps2_reg: smps2 { | |
263 | - /* VDD_CORE */ | |
264 | - regulator-name = "smps2"; | |
265 | - regulator-min-microvolt = <850000>; | |
266 | - regulator-max-microvolt = <1060000>; | |
267 | - regulator-boot-on; | |
268 | - regulator-always-on; | |
269 | - }; | |
270 | - | |
271 | - smps3_reg: smps3 { | |
272 | - /* VDD_GPU IVA DSPEVE */ | |
273 | - regulator-name = "smps3"; | |
274 | - regulator-min-microvolt = <850000>; | |
275 | - regulator-max-microvolt = <1250000>; | |
276 | - regulator-boot-on; | |
277 | - regulator-always-on; | |
278 | - }; | |
279 | - | |
280 | - smps4_reg: smps4 { | |
281 | - /* VDDS1V8 */ | |
282 | - regulator-name = "smps4"; | |
283 | - regulator-min-microvolt = <1800000>; | |
284 | - regulator-max-microvolt = <1800000>; | |
285 | - regulator-always-on; | |
286 | - regulator-boot-on; | |
287 | - }; | |
288 | - | |
289 | - smps5_reg: smps5 { | |
290 | - /* VDD_DDR */ | |
291 | - regulator-name = "smps5"; | |
292 | - regulator-min-microvolt = <1350000>; | |
293 | - regulator-max-microvolt = <1350000>; | |
294 | - regulator-boot-on; | |
295 | - regulator-always-on; | |
296 | - }; | |
297 | - | |
298 | - ldo1_reg: ldo1 { | |
299 | - /* LDO1_OUT --> SDIO */ | |
300 | - regulator-name = "ldo1"; | |
301 | - regulator-min-microvolt = <1800000>; | |
302 | - regulator-max-microvolt = <3300000>; | |
303 | - regulator-boot-on; | |
304 | - }; | |
305 | - | |
306 | - ldo2_reg: ldo2 { | |
307 | - /* LDO2_OUT --> TP1017 (UNUSED) */ | |
308 | - regulator-name = "ldo2"; | |
309 | - regulator-min-microvolt = <1800000>; | |
310 | - regulator-max-microvolt = <3300000>; | |
311 | - }; | |
312 | - | |
313 | - ldo3_reg: ldo3 { | |
314 | - /* VDDA_1V8_PHY */ | |
315 | - regulator-name = "ldo3"; | |
316 | - regulator-min-microvolt = <1800000>; | |
317 | - regulator-max-microvolt = <1800000>; | |
318 | - regulator-boot-on; | |
319 | - regulator-always-on; | |
320 | - }; | |
321 | - | |
322 | - ldo5_reg: ldo5 { | |
323 | - /* VDDA_1V8_PLL */ | |
324 | - regulator-name = "ldo5"; | |
325 | - regulator-min-microvolt = <1800000>; | |
326 | - regulator-max-microvolt = <1800000>; | |
327 | - regulator-always-on; | |
328 | - regulator-boot-on; | |
329 | - }; | |
330 | - | |
331 | - ldo4_reg: ldo4 { | |
332 | - /* VDDA_3V_USB: VDDA_USBHS33 */ | |
333 | - regulator-name = "ldo4"; | |
334 | - regulator-min-microvolt = <3300000>; | |
335 | - regulator-max-microvolt = <3300000>; | |
336 | - regulator-boot-on; | |
337 | - }; | |
338 | - }; | |
339 | - }; | |
340 | - | |
341 | - tps65917_power_button { | |
342 | - compatible = "ti,palmas-pwrbutton"; | |
343 | - interrupt-parent = <&tps65917>; | |
344 | - interrupts = <1 IRQ_TYPE_NONE>; | |
345 | - wakeup-source; | |
346 | - ti,palmas-long-press-seconds = <6>; | |
347 | - }; | |
348 | - }; | |
349 | - | |
350 | - pcf_gpio_21: gpio@21 { | |
351 | - compatible = "ti,pcf8575"; | |
352 | - reg = <0x21>; | |
353 | - lines-initial-states = <0x1408>; | |
354 | - gpio-controller; | |
355 | - #gpio-cells = <2>; | |
356 | - interrupt-parent = <&gpio6>; | |
357 | - interrupts = <11 IRQ_TYPE_EDGE_FALLING>; | |
358 | - interrupt-controller; | |
359 | - #interrupt-cells = <2>; | |
360 | - u-boot,i2c-offset-len = <0>; | |
361 | - }; | |
362 | -}; | |
363 | - | |
364 | -&i2c5 { | |
365 | - status = "okay"; | |
366 | - pinctrl-names = "default"; | |
367 | - pinctrl-0 = <&i2c5_pins>; | |
368 | - clock-frequency = <400000>; | |
369 | - | |
370 | - pcf_hdmi: pcf8575@26 { | |
371 | - compatible = "nxp,pcf8575"; | |
372 | - reg = <0x26>; | |
373 | - gpio-controller; | |
374 | - #gpio-cells = <2>; | |
375 | - /* | |
376 | - * initial state is used here to keep the mdio interface | |
377 | - * selected on RU89 through SEL_VIN4_MUX_S0, VIN2_S1 and | |
378 | - * VIN2_S0 driven high otherwise Ethernet stops working | |
379 | - * VIN6_SEL_S0 is low, thus selecting McASP3 over VIN6 | |
380 | - */ | |
381 | - lines-initial-states = <0x0f2b>; | |
382 | - u-boot,i2c-offset-len = <0>; | |
383 | - }; | |
384 | -}; | |
385 | - | |
386 | -&uart1 { | |
387 | - status = "okay"; | |
388 | -}; | |
389 | - | |
390 | -&elm { | |
391 | - status = "okay"; | |
392 | -}; | |
393 | - | |
394 | -&gpmc { | |
395 | - status = "okay"; | |
396 | - pinctrl-names = "default"; | |
397 | - pinctrl-0 = <&nand_default>; | |
398 | - ranges = <0 0 0 0x01000000>; /* minimum GPMC partition = 16MB */ | |
399 | - nand@0,0 { | |
400 | - /* To use NAND, DIP switch SW5 must be set like so: | |
401 | - * SW5.1 (NAND_SELn) = ON (LOW) | |
402 | - * SW5.9 (GPMC_WPN) = OFF (HIGH) | |
403 | - */ | |
404 | - reg = <0 0 4>; /* device IO registers */ | |
405 | - ti,nand-ecc-opt = "bch8"; | |
406 | - ti,elm-id = <&elm>; | |
407 | - nand-bus-width = <16>; | |
408 | - gpmc,device-width = <2>; | |
409 | - gpmc,sync-clk-ps = <0>; | |
410 | - gpmc,cs-on-ns = <0>; | |
411 | - gpmc,cs-rd-off-ns = <80>; | |
412 | - gpmc,cs-wr-off-ns = <80>; | |
413 | - gpmc,adv-on-ns = <0>; | |
414 | - gpmc,adv-rd-off-ns = <60>; | |
415 | - gpmc,adv-wr-off-ns = <60>; | |
416 | - gpmc,we-on-ns = <10>; | |
417 | - gpmc,we-off-ns = <50>; | |
418 | - gpmc,oe-on-ns = <4>; | |
419 | - gpmc,oe-off-ns = <40>; | |
420 | - gpmc,access-ns = <40>; | |
421 | - gpmc,wr-access-ns = <80>; | |
422 | - gpmc,rd-cycle-ns = <80>; | |
423 | - gpmc,wr-cycle-ns = <80>; | |
424 | - gpmc,bus-turnaround-ns = <0>; | |
425 | - gpmc,cycle2cycle-delay-ns = <0>; | |
426 | - gpmc,clk-activation-ns = <0>; | |
427 | - gpmc,wait-monitoring-ns = <0>; | |
428 | - gpmc,wr-data-mux-bus-ns = <0>; | |
429 | - /* MTD partition table */ | |
430 | - /* All SPL-* partitions are sized to minimal length | |
431 | - * which can be independently programmable. For | |
432 | - * NAND flash this is equal to size of erase-block */ | |
433 | - #address-cells = <1>; | |
434 | - #size-cells = <1>; | |
435 | - partition@0 { | |
436 | - label = "NAND.SPL"; | |
437 | - reg = <0x00000000 0x000020000>; | |
438 | - }; | |
439 | - partition@1 { | |
440 | - label = "NAND.SPL.backup1"; | |
441 | - reg = <0x00020000 0x00020000>; | |
442 | - }; | |
443 | - partition@2 { | |
444 | - label = "NAND.SPL.backup2"; | |
445 | - reg = <0x00040000 0x00020000>; | |
446 | - }; | |
447 | - partition@3 { | |
448 | - label = "NAND.SPL.backup3"; | |
449 | - reg = <0x00060000 0x00020000>; | |
450 | - }; | |
451 | - partition@4 { | |
452 | - label = "NAND.u-boot-spl-os"; | |
453 | - reg = <0x00080000 0x00040000>; | |
454 | - }; | |
455 | - partition@5 { | |
456 | - label = "NAND.u-boot"; | |
457 | - reg = <0x000c0000 0x00100000>; | |
458 | - }; | |
459 | - partition@6 { | |
460 | - label = "NAND.u-boot-env"; | |
461 | - reg = <0x001c0000 0x00020000>; | |
462 | - }; | |
463 | - partition@7 { | |
464 | - label = "NAND.u-boot-env.backup1"; | |
465 | - reg = <0x001e0000 0x00020000>; | |
466 | - }; | |
467 | - partition@8 { | |
468 | - label = "NAND.kernel"; | |
469 | - reg = <0x00200000 0x00800000>; | |
470 | - }; | |
471 | - partition@9 { | |
472 | - label = "NAND.file-system"; | |
473 | - reg = <0x00a00000 0x0f600000>; | |
474 | - }; | |
475 | - }; | |
476 | -}; | |
477 | - | |
478 | -&usb2_phy1 { | |
479 | - phy-supply = <&ldo4_reg>; | |
480 | -}; | |
481 | - | |
482 | -&usb2_phy2 { | |
483 | - phy-supply = <&ldo4_reg>; | |
484 | -}; | |
485 | - | |
486 | -&omap_dwc3_1 { | |
487 | - extcon = <&extcon_usb1>; | |
488 | -}; | |
489 | - | |
490 | -&omap_dwc3_2 { | |
491 | - extcon = <&extcon_usb2>; | |
492 | -}; | |
493 | - | |
494 | -&usb1 { | |
495 | - dr_mode = "peripheral"; | |
496 | - pinctrl-names = "default"; | |
497 | - pinctrl-0 = <&usb1_pins>; | |
498 | -}; | |
499 | - | |
500 | -&usb2 { | |
501 | - dr_mode = "host"; | |
502 | - pinctrl-names = "default"; | |
503 | - pinctrl-0 = <&usb2_pins>; | |
504 | -}; | |
505 | - | |
506 | -&mmc1 { | |
507 | - status = "okay"; | |
508 | - pinctrl-names = "default"; | |
509 | - pinctrl-0 = <&mmc1_pins_default>; | |
510 | - | |
511 | - vmmc_aux-supply = <&ldo1_reg>; | |
512 | - vmmc-supply = <&evm_3v3_sd>; | |
513 | - bus-width = <4>; | |
514 | - /* | |
515 | - * SDCD signal is not being used here - using the fact that GPIO mode | |
516 | - * is a viable alternative | |
517 | - */ | |
518 | - cd-gpios = <&gpio6 27 GPIO_ACTIVE_LOW>; | |
519 | -}; | |
520 | - | |
521 | -&mmc2 { | |
522 | - /* SW5-3 in ON position */ | |
523 | - status = "okay"; | |
524 | - pinctrl-names = "default"; | |
525 | - pinctrl-0 = <&mmc2_pins_default>; | |
526 | - | |
527 | - vmmc-supply = <&evm_3v3>; | |
528 | - bus-width = <8>; | |
529 | - ti,non-removable; | |
530 | -}; | |
531 | - | |
532 | -&dra7_pmx_core { | |
533 | - cpsw_default: cpsw_default { | |
534 | - pinctrl-single,pins = < | |
535 | - /* Slave 2 */ | |
536 | - 0x198 (PIN_OUTPUT | MUX_MODE3) /* vin2a_d12.rgmii1_txc */ | |
537 | - 0x19c (PIN_OUTPUT | MUX_MODE3) /* vin2a_d13.rgmii1_tctl */ | |
538 | - 0x1a0 (PIN_OUTPUT | MUX_MODE3) /* vin2a_d14.rgmii1_td3 */ | |
539 | - 0x1a4 (PIN_OUTPUT | MUX_MODE3) /* vin2a_d15.rgmii1_td2 */ | |
540 | - 0x1a8 (PIN_OUTPUT | MUX_MODE3) /* vin2a_d16.rgmii1_td1 */ | |
541 | - 0x1ac (PIN_OUTPUT | MUX_MODE3) /* vin2a_d17.rgmii1_td0 */ | |
542 | - 0x1b0 (PIN_INPUT | MUX_MODE3) /* vin2a_d18.rgmii1_rclk */ | |
543 | - 0x1b4 (PIN_INPUT | MUX_MODE3) /* vin2a_d19.rgmii1_rctl */ | |
544 | - 0x1b8 (PIN_INPUT | MUX_MODE3) /* vin2a_d20.rgmii1_rd3 */ | |
545 | - 0x1bc (PIN_INPUT | MUX_MODE3) /* vin2a_d21.rgmii1_rd2 */ | |
546 | - 0x1c0 (PIN_INPUT | MUX_MODE3) /* vin2a_d22.rgmii1_rd1 */ | |
547 | - 0x1c4 (PIN_INPUT | MUX_MODE3) /* vin2a_d23.rgmii1_rd0 */ | |
548 | - >; | |
549 | - | |
550 | - }; | |
551 | - | |
552 | - cpsw_sleep: cpsw_sleep { | |
553 | - pinctrl-single,pins = < | |
554 | - /* Slave 2 */ | |
555 | - 0x198 (MUX_MODE15) | |
556 | - 0x19c (MUX_MODE15) | |
557 | - 0x1a0 (MUX_MODE15) | |
558 | - 0x1a4 (MUX_MODE15) | |
559 | - 0x1a8 (MUX_MODE15) | |
560 | - 0x1ac (MUX_MODE15) | |
561 | - 0x1b0 (MUX_MODE15) | |
562 | - 0x1b4 (MUX_MODE15) | |
563 | - 0x1b8 (MUX_MODE15) | |
564 | - 0x1bc (MUX_MODE15) | |
565 | - 0x1c0 (MUX_MODE15) | |
566 | - 0x1c4 (MUX_MODE15) | |
567 | - >; | |
568 | - }; | |
569 | - | |
570 | - davinci_mdio_default: davinci_mdio_default { | |
571 | - pinctrl-single,pins = < | |
572 | - /* MDIO */ | |
573 | - 0x23c (PIN_OUTPUT_PULLUP | MUX_MODE0) /* mdio_d.mdio_d */ | |
574 | - 0x240 (PIN_INPUT_PULLUP | MUX_MODE0) /* mdio_clk.mdio_clk */ | |
575 | - >; | |
576 | - }; | |
577 | - | |
578 | - davinci_mdio_sleep: davinci_mdio_sleep { | |
579 | - pinctrl-single,pins = < | |
580 | - 0x23c (MUX_MODE15) | |
581 | - 0x240 (MUX_MODE15) | |
582 | - >; | |
583 | - }; | |
584 | -}; | |
585 | - | |
586 | -&mac { | |
587 | - status = "okay"; | |
588 | - pinctrl-names = "default", "sleep"; | |
589 | - pinctrl-0 = <&cpsw_default>; | |
590 | - pinctrl-1 = <&cpsw_sleep>; | |
591 | - mode-gpios = <&pcf_gpio_21 4 GPIO_ACTIVE_HIGH>; | |
592 | -}; | |
593 | - | |
594 | 21 | &cpsw_emac0 { |
595 | 22 | phy_id = <&davinci_mdio>, <3>; |
596 | 23 | phy-mode = "rgmii"; |
597 | 24 | }; |
598 | 25 | |
599 | -&davinci_mdio { | |
600 | - pinctrl-names = "default", "sleep"; | |
601 | - pinctrl-0 = <&davinci_mdio_default>; | |
602 | - pinctrl-1 = <&davinci_mdio_sleep>; | |
603 | -}; | |
604 | - | |
605 | -&dcan1 { | |
606 | - status = "ok"; | |
607 | - pinctrl-names = "default", "sleep", "active"; | |
608 | - pinctrl-0 = <&dcan1_pins_sleep>; | |
609 | - pinctrl-1 = <&dcan1_pins_sleep>; | |
610 | - pinctrl-2 = <&dcan1_pins_default>; | |
611 | -}; | |
612 | - | |
613 | -&qspi { | |
614 | - status = "okay"; | |
615 | - pinctrl-names = "default"; | |
616 | - pinctrl-0 = <&qspi1_pins>; | |
617 | - | |
618 | - spi-max-frequency = <76800000>; | |
619 | - m25p80@0 { | |
620 | - compatible = "s25fl256s1","spi-flash"; | |
621 | - spi-max-frequency = <64000000>; | |
622 | - reg = <0>; | |
623 | - spi-tx-bus-width = <1>; | |
624 | - spi-rx-bus-width = <4>; | |
625 | - #address-cells = <1>; | |
626 | - #size-cells = <1>; | |
627 | - | |
628 | - /* MTD partition table. | |
629 | - * The ROM checks the first four physical blocks | |
630 | - * for a valid file to boot and the flash here is | |
631 | - * 64KiB block size. | |
632 | - */ | |
633 | - partition@0 { | |
634 | - label = "QSPI.SPL"; | |
635 | - reg = <0x00000000 0x000010000>; | |
636 | - }; | |
637 | - partition@1 { | |
638 | - label = "QSPI.SPL.backup1"; | |
639 | - reg = <0x00010000 0x00010000>; | |
640 | - }; | |
641 | - partition@2 { | |
642 | - label = "QSPI.SPL.backup2"; | |
643 | - reg = <0x00020000 0x00010000>; | |
644 | - }; | |
645 | - partition@3 { | |
646 | - label = "QSPI.SPL.backup3"; | |
647 | - reg = <0x00030000 0x00010000>; | |
648 | - }; | |
649 | - partition@4 { | |
650 | - label = "QSPI.u-boot"; | |
651 | - reg = <0x00040000 0x00100000>; | |
652 | - }; | |
653 | - partition@5 { | |
654 | - label = "QSPI.u-boot-spl-os"; | |
655 | - reg = <0x00140000 0x00080000>; | |
656 | - }; | |
657 | - partition@6 { | |
658 | - label = "QSPI.u-boot-env"; | |
659 | - reg = <0x001c0000 0x00010000>; | |
660 | - }; | |
661 | - partition@7 { | |
662 | - label = "QSPI.u-boot-env.backup1"; | |
663 | - reg = <0x001d0000 0x0010000>; | |
664 | - }; | |
665 | - partition@8 { | |
666 | - label = "QSPI.kernel"; | |
667 | - reg = <0x001e0000 0x0800000>; | |
668 | - }; | |
669 | - partition@9 { | |
670 | - label = "QSPI.file-system"; | |
671 | - reg = <0x009e0000 0x01620000>; | |
672 | - }; | |
673 | - }; | |
674 | -}; | |
675 | - | |
676 | 26 | &dss { |
677 | 27 | status = "ok"; |
678 | 28 | |
679 | 29 | |
680 | 30 | |
... | ... | @@ -680,16 +30,10 @@ |
680 | 30 | }; |
681 | 31 | |
682 | 32 | &hdmi { |
683 | - status = "ok"; | |
684 | 33 | vdda-supply = <&ldo3_reg>; |
34 | +}; | |
685 | 35 | |
686 | - pinctrl-names = "default"; | |
687 | - pinctrl-0 = <&hdmi_pins>; | |
688 | - | |
689 | - port { | |
690 | - hdmi_out: endpoint { | |
691 | - remote-endpoint = <&tpd12s015_in>; | |
692 | - }; | |
693 | - }; | |
36 | +&mac { | |
37 | + mode-gpios = <&pcf_gpio_21 4 GPIO_ACTIVE_HIGH>; | |
694 | 38 | }; |
board/ti/dra7xx/evm.c
... | ... | @@ -828,12 +828,18 @@ |
828 | 828 | #ifdef CONFIG_SPL_LOAD_FIT |
829 | 829 | int board_fit_config_name_match(const char *name) |
830 | 830 | { |
831 | - if (is_dra72x() && !strcmp(name, "dra72-evm")) | |
831 | + if (is_dra72x()) { | |
832 | + if (board_is_dra72x_revc_or_later()) { | |
833 | + if (!strcmp(name, "dra72-evm-revc")) | |
834 | + return 0; | |
835 | + } else if (!strcmp(name, "dra72-evm")) { | |
836 | + return 0; | |
837 | + } | |
838 | + } else if (!is_dra72x() && !strcmp(name, "dra7-evm")) { | |
832 | 839 | return 0; |
833 | - else if (!is_dra72x() && !strcmp(name, "dra7-evm")) | |
834 | - return 0; | |
835 | - else | |
836 | - return -1; | |
840 | + } | |
841 | + | |
842 | + return -1; | |
837 | 843 | } |
838 | 844 | #endif |
839 | 845 |
configs/dra7xx_evm_defconfig