diff options
Diffstat (limited to 'arch/arm/boot/dts/omap5-cm-t54.dts')
-rw-r--r-- | arch/arm/boot/dts/omap5-cm-t54.dts | 413 |
1 files changed, 413 insertions, 0 deletions
diff --git a/arch/arm/boot/dts/omap5-cm-t54.dts b/arch/arm/boot/dts/omap5-cm-t54.dts new file mode 100644 index 000000000000..b8698ca68647 --- /dev/null +++ b/arch/arm/boot/dts/omap5-cm-t54.dts | |||
@@ -0,0 +1,413 @@ | |||
1 | /* | ||
2 | * Support for CompuLab CM-T54 | ||
3 | */ | ||
4 | /dts-v1/; | ||
5 | |||
6 | #include "omap5.dtsi" | ||
7 | #include <dt-bindings/interrupt-controller/irq.h> | ||
8 | #include <dt-bindings/interrupt-controller/arm-gic.h> | ||
9 | |||
10 | / { | ||
11 | model = "CompuLab CM-T54"; | ||
12 | compatible = "compulab,omap5-cm-t54", "ti,omap5"; | ||
13 | |||
14 | memory { | ||
15 | device_type = "memory"; | ||
16 | reg = <0x80000000 0x7F000000>; /* 2048 MB */ | ||
17 | }; | ||
18 | |||
19 | vmmcsd_fixed: fixed-regulator-mmcsd { | ||
20 | compatible = "regulator-fixed"; | ||
21 | regulator-name = "vmmcsd_fixed"; | ||
22 | regulator-min-microvolt = <3300000>; | ||
23 | regulator-max-microvolt = <3300000>; | ||
24 | }; | ||
25 | |||
26 | vwlan_pdn_fixed: fixed-regulator-vwlan-pdn { | ||
27 | compatible = "regulator-fixed"; | ||
28 | regulator-name = "vwlan_pdn_fixed"; | ||
29 | regulator-min-microvolt = <3300000>; | ||
30 | regulator-max-microvolt = <3300000>; | ||
31 | vin-supply = <&ldo2_reg>; | ||
32 | gpio = <&gpio4 13 GPIO_ACTIVE_HIGH>; /* gpio4_109 */ | ||
33 | startup-delay-us = <1000>; | ||
34 | enable-active-high; | ||
35 | }; | ||
36 | |||
37 | vwlan_fixed: fixed-regulator-vwlan { | ||
38 | compatible = "regulator-fixed"; | ||
39 | regulator-name = "vwlan_fixed"; | ||
40 | regulator-min-microvolt = <3300000>; | ||
41 | regulator-max-microvolt = <3300000>; | ||
42 | vin-supply = <&vwlan_pdn_fixed>; | ||
43 | gpio = <&gpio4 14 GPIO_ACTIVE_HIGH>; /* gpio4_110 */ | ||
44 | startup-delay-us = <1000>; | ||
45 | enable-active-high; | ||
46 | }; | ||
47 | |||
48 | /* HS USB Host PHY on PORT 2 */ | ||
49 | hsusb2_phy: hsusb2_phy { | ||
50 | compatible = "usb-nop-xceiv"; | ||
51 | reset-gpios = <&gpio3 12 GPIO_ACTIVE_LOW>; /* gpio3_76 HUB_RESET */ | ||
52 | }; | ||
53 | |||
54 | /* HS USB Host PHY on PORT 3 */ | ||
55 | hsusb3_phy: hsusb3_phy { | ||
56 | compatible = "usb-nop-xceiv"; | ||
57 | reset-gpios = <&gpio3 19 GPIO_ACTIVE_LOW>; /* gpio3_83 ETH_RESET */ | ||
58 | }; | ||
59 | |||
60 | leds { | ||
61 | compatible = "gpio-leds"; | ||
62 | led@1 { | ||
63 | label = "Heartbeat"; | ||
64 | gpios = <&gpio3 16 GPIO_ACTIVE_HIGH>; /* gpio3_80 ACT_LED */ | ||
65 | linux,default-trigger = "heartbeat"; | ||
66 | default-state = "off"; | ||
67 | }; | ||
68 | }; | ||
69 | }; | ||
70 | |||
71 | &omap5_pmx_core { | ||
72 | pinctrl-names = "default"; | ||
73 | pinctrl-0 = < | ||
74 | &led_gpio_pins | ||
75 | &usbhost_pins | ||
76 | >; | ||
77 | |||
78 | led_gpio_pins: pinmux_led_gpio_pins { | ||
79 | pinctrl-single,pins = < | ||
80 | OMAP5_IOPAD(0x00b0, PIN_OUTPUT | MUX_MODE6) /* hsi2_caflag.gpio3_80 */ | ||
81 | >; | ||
82 | }; | ||
83 | |||
84 | i2c1_pins: pinmux_i2c1_pins { | ||
85 | pinctrl-single,pins = < | ||
86 | OMAP5_IOPAD(0x01f2, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c1_pmic_scl */ | ||
87 | OMAP5_IOPAD(0x01f4, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c1_pmic_sda */ | ||
88 | >; | ||
89 | }; | ||
90 | |||
91 | mmc1_pins: pinmux_mmc1_pins { | ||
92 | pinctrl-single,pins = < | ||
93 | OMAP5_IOPAD(0x01e2, PIN_INPUT_PULLUP | MUX_MODE0) /* sdcard_clk */ | ||
94 | OMAP5_IOPAD(0x01e4, PIN_INPUT_PULLUP | MUX_MODE0) /* sdcard_cmd */ | ||
95 | OMAP5_IOPAD(0x01e6, PIN_INPUT_PULLUP | MUX_MODE0) /* sdcard_data2 */ | ||
96 | OMAP5_IOPAD(0x01e8, PIN_INPUT_PULLUP | MUX_MODE0) /* sdcard_data3 */ | ||
97 | OMAP5_IOPAD(0x01ea, PIN_INPUT_PULLUP | MUX_MODE0) /* sdcard_data0 */ | ||
98 | OMAP5_IOPAD(0x01ec, PIN_INPUT_PULLUP | MUX_MODE0) /* sdcard_data1 */ | ||
99 | >; | ||
100 | }; | ||
101 | |||
102 | mmc2_pins: pinmux_mmc2_pins { | ||
103 | pinctrl-single,pins = < | ||
104 | OMAP5_IOPAD(0x0040, PIN_INPUT_PULLUP | MUX_MODE0) /* emmc_clk */ | ||
105 | OMAP5_IOPAD(0x0042, PIN_INPUT_PULLUP | MUX_MODE0) /* emmc_cmd */ | ||
106 | OMAP5_IOPAD(0x0044, PIN_INPUT_PULLUP | MUX_MODE0) /* emmc_data0 */ | ||
107 | OMAP5_IOPAD(0x0046, PIN_INPUT_PULLUP | MUX_MODE0) /* emmc_data1 */ | ||
108 | OMAP5_IOPAD(0x0048, PIN_INPUT_PULLUP | MUX_MODE0) /* emmc_data2 */ | ||
109 | OMAP5_IOPAD(0x004a, PIN_INPUT_PULLUP | MUX_MODE0) /* emmc_data3 */ | ||
110 | OMAP5_IOPAD(0x004c, PIN_INPUT_PULLUP | MUX_MODE0) /* emmc_data4 */ | ||
111 | OMAP5_IOPAD(0x004e, PIN_INPUT_PULLUP | MUX_MODE0) /* emmc_data5 */ | ||
112 | OMAP5_IOPAD(0x0050, PIN_INPUT_PULLUP | MUX_MODE0) /* emmc_data6 */ | ||
113 | OMAP5_IOPAD(0x0052, PIN_INPUT_PULLUP | MUX_MODE0) /* emmc_data7 */ | ||
114 | >; | ||
115 | }; | ||
116 | |||
117 | mmc3_pins: pinmux_mmc3_pins { | ||
118 | pinctrl-single,pins = < | ||
119 | OMAP5_IOPAD(0x01a4, PIN_INPUT_PULLUP | MUX_MODE0) /* wlsdio_clk */ | ||
120 | OMAP5_IOPAD(0x01a6, PIN_INPUT_PULLUP | MUX_MODE0) /* wlsdio_cmd */ | ||
121 | OMAP5_IOPAD(0x01a8, PIN_INPUT_PULLUP | MUX_MODE0) /* wlsdio_data0 */ | ||
122 | OMAP5_IOPAD(0x01aa, PIN_INPUT_PULLUP | MUX_MODE0) /* wlsdio_data1 */ | ||
123 | OMAP5_IOPAD(0x01ac, PIN_INPUT_PULLUP | MUX_MODE0) /* wlsdio_data2 */ | ||
124 | OMAP5_IOPAD(0x01ae, PIN_INPUT_PULLUP | MUX_MODE0) /* wlsdio_data3 */ | ||
125 | >; | ||
126 | }; | ||
127 | |||
128 | wlan_gpios_pins: pinmux_wlan_gpios_pins { | ||
129 | pinctrl-single,pins = < | ||
130 | OMAP5_IOPAD(0x019c, PIN_OUTPUT_PULLDOWN | MUX_MODE6) /* gpio4_109 */ | ||
131 | OMAP5_IOPAD(0x019e, PIN_OUTPUT_PULLDOWN | MUX_MODE6) /* gpio4_110 */ | ||
132 | >; | ||
133 | }; | ||
134 | |||
135 | usbhost_pins: pinmux_usbhost_pins { | ||
136 | pinctrl-single,pins = < | ||
137 | OMAP5_IOPAD(0x00c4, PIN_INPUT | MUX_MODE0) /* usbb2_hsic_strobe */ | ||
138 | OMAP5_IOPAD(0x00c6, PIN_INPUT | MUX_MODE0) /* usbb2_hsic_data */ | ||
139 | |||
140 | OMAP5_IOPAD(0x01dc, PIN_INPUT | MUX_MODE0) /* usbb3_hsic_strobe */ | ||
141 | OMAP5_IOPAD(0x01de, PIN_INPUT | MUX_MODE0) /* usbb3_hsic_data */ | ||
142 | |||
143 | OMAP5_IOPAD(0x00a8, PIN_OUTPUT | MUX_MODE6) /* hsi2_caready.gpio3_76 */ | ||
144 | OMAP5_IOPAD(0x00b6, PIN_OUTPUT | MUX_MODE6) /* hsi2_acdata.gpio3_83 */ | ||
145 | >; | ||
146 | }; | ||
147 | }; | ||
148 | |||
149 | &mmc1 { | ||
150 | pinctrl-names = "default"; | ||
151 | pinctrl-0 = <&mmc1_pins>; | ||
152 | vmmc-supply = <&ldo9_reg>; | ||
153 | bus-width = <4>; | ||
154 | }; | ||
155 | |||
156 | &mmc2 { | ||
157 | pinctrl-names = "default"; | ||
158 | pinctrl-0 = <&mmc2_pins>; | ||
159 | vmmc-supply = <&vmmcsd_fixed>; | ||
160 | bus-width = <8>; | ||
161 | ti,non-removable; | ||
162 | }; | ||
163 | |||
164 | &mmc3 { | ||
165 | pinctrl-names = "default"; | ||
166 | pinctrl-0 = < | ||
167 | &mmc3_pins | ||
168 | &wlan_gpios_pins | ||
169 | >; | ||
170 | vmmc-supply = <&vwlan_fixed>; | ||
171 | bus-width = <4>; | ||
172 | ti,non-removable; | ||
173 | }; | ||
174 | |||
175 | &mmc4 { | ||
176 | status = "disabled"; | ||
177 | }; | ||
178 | |||
179 | &mmc5 { | ||
180 | status = "disabled"; | ||
181 | }; | ||
182 | |||
183 | &i2c1 { | ||
184 | pinctrl-names = "default"; | ||
185 | pinctrl-0 = <&i2c1_pins>; | ||
186 | |||
187 | clock-frequency = <400000>; | ||
188 | |||
189 | at24@50 { | ||
190 | compatible = "at24,24c02"; | ||
191 | pagesize = <16>; | ||
192 | reg = <0x50>; | ||
193 | }; | ||
194 | |||
195 | palmas: palmas@48 { | ||
196 | compatible = "ti,palmas"; | ||
197 | interrupts = <GIC_SPI 7 IRQ_TYPE_NONE>; /* IRQ_SYS_1N */ | ||
198 | interrupt-parent = <&gic>; | ||
199 | reg = <0x48>; | ||
200 | interrupt-controller; | ||
201 | #interrupt-cells = <2>; | ||
202 | ti,system-power-controller; | ||
203 | |||
204 | extcon_usb3: palmas_usb { | ||
205 | compatible = "ti,palmas-usb-vid"; | ||
206 | ti,enable-vbus-detection; | ||
207 | ti,enable-id-detection; | ||
208 | ti,wakeup; | ||
209 | }; | ||
210 | |||
211 | rtc { | ||
212 | compatible = "ti,palmas-rtc"; | ||
213 | interrupt-parent = <&palmas>; | ||
214 | interrupts = <8 IRQ_TYPE_NONE>; | ||
215 | }; | ||
216 | |||
217 | palmas_pmic { | ||
218 | compatible = "ti,palmas-pmic"; | ||
219 | interrupt-parent = <&palmas>; | ||
220 | interrupts = <14 IRQ_TYPE_NONE>; | ||
221 | interrupt-name = "short-irq"; | ||
222 | |||
223 | ti,ldo6-vibrator; | ||
224 | |||
225 | regulators { | ||
226 | smps123_reg: smps123 { | ||
227 | /* VDD_OPP_MPU */ | ||
228 | regulator-name = "smps123"; | ||
229 | regulator-min-microvolt = < 600000>; | ||
230 | regulator-max-microvolt = <1500000>; | ||
231 | regulator-always-on; | ||
232 | regulator-boot-on; | ||
233 | }; | ||
234 | |||
235 | smps45_reg: smps45 { | ||
236 | /* VDD_OPP_MM */ | ||
237 | regulator-name = "smps45"; | ||
238 | regulator-min-microvolt = < 600000>; | ||
239 | regulator-max-microvolt = <1310000>; | ||
240 | regulator-always-on; | ||
241 | regulator-boot-on; | ||
242 | }; | ||
243 | |||
244 | smps6_reg: smps6 { | ||
245 | /* VDD_DDR3 - over VDD_SMPS6 */ | ||
246 | regulator-name = "smps6"; | ||
247 | regulator-min-microvolt = <1500000>; | ||
248 | regulator-max-microvolt = <1500000>; | ||
249 | regulator-always-on; | ||
250 | regulator-boot-on; | ||
251 | }; | ||
252 | |||
253 | smps7_reg: smps7 { | ||
254 | /* VDDS_1v8_OMAP over VDDS_1v8_MAIN */ | ||
255 | regulator-name = "smps7"; | ||
256 | regulator-min-microvolt = <1800000>; | ||
257 | regulator-max-microvolt = <1800000>; | ||
258 | regulator-always-on; | ||
259 | regulator-boot-on; | ||
260 | }; | ||
261 | |||
262 | smps8_reg: smps8 { | ||
263 | /* VDD_OPP_CORE */ | ||
264 | regulator-name = "smps8"; | ||
265 | regulator-min-microvolt = < 600000>; | ||
266 | regulator-max-microvolt = <1310000>; | ||
267 | regulator-always-on; | ||
268 | regulator-boot-on; | ||
269 | }; | ||
270 | |||
271 | smps9_reg: smps9 { | ||
272 | /* VDDA_2v1_AUD over VDD_2v1 */ | ||
273 | regulator-name = "smps9"; | ||
274 | regulator-min-microvolt = <3300000>; | ||
275 | regulator-max-microvolt = <3300000>; | ||
276 | ti,smps-range = <0x80>; | ||
277 | regulator-always-on; | ||
278 | regulator-boot-on; | ||
279 | }; | ||
280 | |||
281 | smps10_out2_reg: smps10_out2 { | ||
282 | /* VBUS_5V_OTG */ | ||
283 | regulator-name = "smps10_out2"; | ||
284 | regulator-min-microvolt = <5000000>; | ||
285 | regulator-max-microvolt = <5000000>; | ||
286 | regulator-always-on; | ||
287 | regulator-boot-on; | ||
288 | }; | ||
289 | |||
290 | smps10_out1_reg: smps10_out1 { | ||
291 | /* VBUS_5V_OTG */ | ||
292 | regulator-name = "smps10_out1"; | ||
293 | regulator-min-microvolt = <5000000>; | ||
294 | regulator-max-microvolt = <5000000>; | ||
295 | }; | ||
296 | |||
297 | ldo1_reg: ldo1 { | ||
298 | /* VDDAPHY_CAM: vdda_csiport */ | ||
299 | regulator-name = "ldo1"; | ||
300 | regulator-min-microvolt = <1500000>; | ||
301 | regulator-max-microvolt = <1800000>; | ||
302 | }; | ||
303 | |||
304 | ldo2_reg: ldo2 { | ||
305 | /* VDD_3V3_WLAN */ | ||
306 | regulator-name = "ldo2"; | ||
307 | regulator-min-microvolt = <3300000>; | ||
308 | regulator-max-microvolt = <3300000>; | ||
309 | startup-delay-us = <1000>; | ||
310 | }; | ||
311 | |||
312 | ldo3_reg: ldo3 { | ||
313 | /* VCC_1V5_AUD */ | ||
314 | regulator-name = "ldo3"; | ||
315 | regulator-min-microvolt = <1500000>; | ||
316 | regulator-max-microvolt = <1500000>; | ||
317 | regulator-always-on; | ||
318 | regulator-boot-on; | ||
319 | }; | ||
320 | |||
321 | ldo4_reg: ldo4 { | ||
322 | /* VDDAPHY_DISP: vdda_dsiport/hdmi */ | ||
323 | regulator-name = "ldo4"; | ||
324 | regulator-min-microvolt = <1500000>; | ||
325 | regulator-max-microvolt = <1800000>; | ||
326 | }; | ||
327 | |||
328 | ldo5_reg: ldo5 { | ||
329 | /* VDDA_1V8_PHY: usb/sata/hdmi.. */ | ||
330 | regulator-name = "ldo5"; | ||
331 | regulator-min-microvolt = <1800000>; | ||
332 | regulator-max-microvolt = <1800000>; | ||
333 | regulator-always-on; | ||
334 | regulator-boot-on; | ||
335 | }; | ||
336 | |||
337 | ldo6_reg: ldo6 { | ||
338 | /* VDDS_1V2_WKUP: hsic/ldo_emu_wkup */ | ||
339 | regulator-name = "ldo6"; | ||
340 | regulator-min-microvolt = <1200000>; | ||
341 | regulator-max-microvolt = <1200000>; | ||
342 | regulator-always-on; | ||
343 | regulator-boot-on; | ||
344 | }; | ||
345 | |||
346 | ldo7_reg: ldo7 { | ||
347 | /* VDD_VPP: vpp1 */ | ||
348 | regulator-name = "ldo7"; | ||
349 | regulator-min-microvolt = <2000000>; | ||
350 | regulator-max-microvolt = <2000000>; | ||
351 | /* Only for efuse reprograming! */ | ||
352 | status = "disabled"; | ||
353 | }; | ||
354 | |||
355 | ldo8_reg: ldo8 { | ||
356 | /* VDD_3v0: Does not go anywhere */ | ||
357 | regulator-name = "ldo8"; | ||
358 | regulator-min-microvolt = <3000000>; | ||
359 | regulator-max-microvolt = <3000000>; | ||
360 | regulator-boot-on; | ||
361 | /* Unused */ | ||
362 | status = "disabled"; | ||
363 | }; | ||
364 | |||
365 | ldo9_reg: ldo9 { | ||
366 | /* VCC_DV_SDIO: vdds_sdcard */ | ||
367 | regulator-name = "ldo9"; | ||
368 | regulator-min-microvolt = <1800000>; | ||
369 | regulator-max-microvolt = <3000000>; | ||
370 | regulator-boot-on; | ||
371 | }; | ||
372 | |||
373 | ldoln_reg: ldoln { | ||
374 | /* VDDA_1v8_REF: vdds_osc/mm_l4per.. */ | ||
375 | regulator-name = "ldoln"; | ||
376 | regulator-min-microvolt = <1800000>; | ||
377 | regulator-max-microvolt = <1800000>; | ||
378 | regulator-always-on; | ||
379 | regulator-boot-on; | ||
380 | }; | ||
381 | |||
382 | ldousb_reg: ldousb { | ||
383 | /* VDDA_3V_USB: VDDA_USBHS33 */ | ||
384 | regulator-name = "ldousb"; | ||
385 | regulator-min-microvolt = <3250000>; | ||
386 | regulator-max-microvolt = <3250000>; | ||
387 | regulator-always-on; | ||
388 | regulator-boot-on; | ||
389 | }; | ||
390 | |||
391 | regen3_reg: regen3 { | ||
392 | /* REGEN3 controls LDO9 supply to card */ | ||
393 | regulator-name = "regen3"; | ||
394 | regulator-always-on; | ||
395 | regulator-boot-on; | ||
396 | }; | ||
397 | }; | ||
398 | }; | ||
399 | }; | ||
400 | }; | ||
401 | |||
402 | &usbhshost { | ||
403 | port2-mode = "ehci-hsic"; | ||
404 | port3-mode = "ehci-hsic"; | ||
405 | }; | ||
406 | |||
407 | &usbhsehci { | ||
408 | phys = <0 &hsusb2_phy &hsusb3_phy>; | ||
409 | }; | ||
410 | |||
411 | &cpu0 { | ||
412 | cpu0-supply = <&smps123_reg>; | ||
413 | }; | ||