Commit | Line | Data |
---|---|---|
e3946fe8 TH |
1 | /* |
2 | * Copyright 2013 Gateworks Corporation | |
3 | * | |
4 | * The code contained herein is licensed under the GNU General Public | |
5 | * License. You may obtain a copy of the GNU General Public License | |
6 | * Version 2 or later at the following locations: | |
7 | * | |
8 | * http://www.opensource.org/licenses/gpl-license.html | |
9 | * http://www.gnu.org/copyleft/gpl.html | |
10 | */ | |
11 | ||
12 | /dts-v1/; | |
13 | #include "imx6q.dtsi" | |
14 | ||
15 | / { | |
16 | model = "Gateworks Ventana GW5400-A"; | |
17 | compatible = "gw,imx6q-gw5400-a", "gw,ventana", "fsl,imx6q"; | |
18 | ||
19 | /* these are used by bootloader for disabling nodes */ | |
20 | aliases { | |
21 | ethernet0 = &fec; | |
22 | ethernet1 = ð1; | |
23 | i2c0 = &i2c1; | |
24 | i2c1 = &i2c2; | |
25 | i2c2 = &i2c3; | |
26 | led0 = &led0; | |
27 | led1 = &led1; | |
28 | led2 = &led2; | |
29 | sky2 = ð1; | |
30 | ssi0 = &ssi1; | |
31 | spi0 = &ecspi1; | |
32 | usb0 = &usbh1; | |
33 | usb1 = &usbotg; | |
34 | usdhc2 = &usdhc3; | |
35 | }; | |
36 | ||
37 | chosen { | |
38 | bootargs = "console=ttymxc1,115200"; | |
39 | }; | |
40 | ||
41 | leds { | |
42 | compatible = "gpio-leds"; | |
43 | ||
44 | led0: user1 { | |
45 | label = "user1"; | |
46 | gpios = <&gpio4 6 0>; /* 102 -> MX6_PANLEDG */ | |
47 | default-state = "on"; | |
48 | linux,default-trigger = "heartbeat"; | |
49 | }; | |
50 | ||
51 | led1: user2 { | |
52 | label = "user2"; | |
53 | gpios = <&gpio4 10 0>; /* 106 -> MX6_PANLEDR */ | |
54 | default-state = "off"; | |
55 | }; | |
56 | ||
57 | led2: user3 { | |
58 | label = "user3"; | |
59 | gpios = <&gpio4 15 1>; /* 111 -> MX6_LOCLED# */ | |
60 | default-state = "off"; | |
61 | }; | |
62 | }; | |
63 | ||
64 | memory { | |
65 | reg = <0x10000000 0x40000000>; | |
66 | }; | |
67 | ||
68 | pps { | |
69 | compatible = "pps-gpio"; | |
70 | gpios = <&gpio1 5 0>; | |
71 | status = "okay"; | |
72 | }; | |
73 | ||
74 | regulators { | |
75 | compatible = "simple-bus"; | |
76 | #address-cells = <1>; | |
77 | #size-cells = <0>; | |
78 | ||
79 | reg_1p0v: regulator@0 { | |
80 | compatible = "regulator-fixed"; | |
81 | reg = <0>; | |
82 | regulator-name = "1P0V"; | |
83 | regulator-min-microvolt = <1000000>; | |
84 | regulator-max-microvolt = <1000000>; | |
85 | regulator-always-on; | |
86 | }; | |
87 | ||
88 | reg_3p3v: regulator@1 { | |
89 | compatible = "regulator-fixed"; | |
90 | reg = <1>; | |
91 | regulator-name = "3P3V"; | |
92 | regulator-min-microvolt = <3300000>; | |
93 | regulator-max-microvolt = <3300000>; | |
94 | regulator-always-on; | |
95 | }; | |
96 | ||
97 | reg_usb_h1_vbus: regulator@2 { | |
98 | compatible = "regulator-fixed"; | |
99 | reg = <2>; | |
100 | regulator-name = "usb_h1_vbus"; | |
101 | regulator-min-microvolt = <5000000>; | |
102 | regulator-max-microvolt = <5000000>; | |
103 | regulator-always-on; | |
104 | }; | |
105 | ||
106 | reg_usb_otg_vbus: regulator@3 { | |
107 | compatible = "regulator-fixed"; | |
108 | reg = <3>; | |
109 | regulator-name = "usb_otg_vbus"; | |
110 | regulator-min-microvolt = <5000000>; | |
111 | regulator-max-microvolt = <5000000>; | |
112 | gpio = <&gpio3 22 0>; | |
113 | enable-active-high; | |
114 | }; | |
115 | }; | |
116 | ||
117 | sound { | |
118 | compatible = "fsl,imx6q-sabrelite-sgtl5000", | |
119 | "fsl,imx-audio-sgtl5000"; | |
120 | model = "imx6q-sabrelite-sgtl5000"; | |
121 | ssi-controller = <&ssi1>; | |
122 | audio-codec = <&codec>; | |
123 | audio-routing = | |
124 | "MIC_IN", "Mic Jack", | |
125 | "Mic Jack", "Mic Bias", | |
126 | "Headphone Jack", "HP_OUT"; | |
127 | mux-int-port = <1>; | |
128 | mux-ext-port = <4>; | |
129 | }; | |
130 | }; | |
131 | ||
132 | &audmux { | |
133 | pinctrl-names = "default"; | |
134 | pinctrl-0 = <&pinctrl_audmux>; | |
135 | status = "okay"; | |
136 | }; | |
137 | ||
138 | &ecspi1 { | |
139 | fsl,spi-num-chipselects = <1>; | |
140 | cs-gpios = <&gpio3 19 0>; | |
141 | pinctrl-names = "default"; | |
142 | pinctrl-0 = <&pinctrl_ecspi1>; | |
143 | status = "okay"; | |
144 | ||
145 | flash: m25p80@0 { | |
146 | compatible = "sst,w25q256"; | |
147 | spi-max-frequency = <30000000>; | |
148 | reg = <0>; | |
149 | }; | |
150 | }; | |
151 | ||
152 | &fec { | |
153 | pinctrl-names = "default"; | |
154 | pinctrl-0 = <&pinctrl_enet>; | |
155 | phy-mode = "rgmii"; | |
156 | phy-reset-gpios = <&gpio1 30 0>; | |
157 | status = "okay"; | |
158 | }; | |
159 | ||
160 | &i2c1 { | |
161 | clock-frequency = <100000>; | |
162 | pinctrl-names = "default"; | |
163 | pinctrl-0 = <&pinctrl_i2c1>; | |
164 | status = "okay"; | |
165 | ||
166 | eeprom1: eeprom@50 { | |
167 | compatible = "atmel,24c02"; | |
168 | reg = <0x50>; | |
169 | pagesize = <16>; | |
170 | }; | |
171 | ||
172 | eeprom2: eeprom@51 { | |
173 | compatible = "atmel,24c02"; | |
174 | reg = <0x51>; | |
175 | pagesize = <16>; | |
176 | }; | |
177 | ||
178 | eeprom3: eeprom@52 { | |
179 | compatible = "atmel,24c02"; | |
180 | reg = <0x52>; | |
181 | pagesize = <16>; | |
182 | }; | |
183 | ||
184 | eeprom4: eeprom@53 { | |
185 | compatible = "atmel,24c02"; | |
186 | reg = <0x53>; | |
187 | pagesize = <16>; | |
188 | }; | |
189 | ||
190 | gpio: pca9555@23 { | |
191 | compatible = "nxp,pca9555"; | |
192 | reg = <0x23>; | |
193 | gpio-controller; | |
194 | #gpio-cells = <2>; | |
195 | }; | |
196 | ||
197 | hwmon: gsc@29 { | |
198 | compatible = "gw,gsp"; | |
199 | reg = <0x29>; | |
200 | }; | |
201 | ||
202 | rtc: ds1672@68 { | |
203 | compatible = "dallas,ds1672"; | |
204 | reg = <0x68>; | |
205 | }; | |
206 | }; | |
207 | ||
208 | &i2c2 { | |
209 | clock-frequency = <100000>; | |
210 | pinctrl-names = "default"; | |
211 | pinctrl-0 = <&pinctrl_i2c2>; | |
212 | status = "okay"; | |
213 | ||
214 | pmic: pfuze100@08 { | |
215 | compatible = "fsl,pfuze100"; | |
216 | reg = <0x08>; | |
217 | ||
218 | regulators { | |
219 | sw1a_reg: sw1ab { | |
220 | regulator-min-microvolt = <300000>; | |
221 | regulator-max-microvolt = <1875000>; | |
222 | regulator-boot-on; | |
223 | regulator-always-on; | |
224 | regulator-ramp-delay = <6250>; | |
225 | }; | |
226 | ||
227 | sw1c_reg: sw1c { | |
228 | regulator-min-microvolt = <300000>; | |
229 | regulator-max-microvolt = <1875000>; | |
230 | regulator-boot-on; | |
231 | regulator-always-on; | |
232 | regulator-ramp-delay = <6250>; | |
233 | }; | |
234 | ||
235 | sw2_reg: sw2 { | |
236 | regulator-min-microvolt = <800000>; | |
237 | regulator-max-microvolt = <3950000>; | |
238 | regulator-boot-on; | |
239 | regulator-always-on; | |
240 | }; | |
241 | ||
242 | sw3a_reg: sw3a { | |
243 | regulator-min-microvolt = <400000>; | |
244 | regulator-max-microvolt = <1975000>; | |
245 | regulator-boot-on; | |
246 | regulator-always-on; | |
247 | }; | |
248 | ||
249 | sw3b_reg: sw3b { | |
250 | regulator-min-microvolt = <400000>; | |
251 | regulator-max-microvolt = <1975000>; | |
252 | regulator-boot-on; | |
253 | regulator-always-on; | |
254 | }; | |
255 | ||
256 | sw4_reg: sw4 { | |
257 | regulator-min-microvolt = <800000>; | |
258 | regulator-max-microvolt = <3300000>; | |
259 | }; | |
260 | ||
261 | swbst_reg: swbst { | |
262 | regulator-min-microvolt = <5000000>; | |
263 | regulator-max-microvolt = <5150000>; | |
264 | }; | |
265 | ||
266 | snvs_reg: vsnvs { | |
267 | regulator-min-microvolt = <1000000>; | |
268 | regulator-max-microvolt = <3000000>; | |
269 | regulator-boot-on; | |
270 | regulator-always-on; | |
271 | }; | |
272 | ||
273 | vref_reg: vrefddr { | |
274 | regulator-boot-on; | |
275 | regulator-always-on; | |
276 | }; | |
277 | ||
278 | vgen1_reg: vgen1 { | |
279 | regulator-min-microvolt = <800000>; | |
280 | regulator-max-microvolt = <1550000>; | |
281 | }; | |
282 | ||
283 | vgen2_reg: vgen2 { | |
284 | regulator-min-microvolt = <800000>; | |
285 | regulator-max-microvolt = <1550000>; | |
286 | }; | |
287 | ||
288 | vgen3_reg: vgen3 { | |
289 | regulator-min-microvolt = <1800000>; | |
290 | regulator-max-microvolt = <3300000>; | |
291 | }; | |
292 | ||
293 | vgen4_reg: vgen4 { | |
294 | regulator-min-microvolt = <1800000>; | |
295 | regulator-max-microvolt = <3300000>; | |
296 | regulator-always-on; | |
297 | }; | |
298 | ||
299 | vgen5_reg: vgen5 { | |
300 | regulator-min-microvolt = <1800000>; | |
301 | regulator-max-microvolt = <3300000>; | |
302 | regulator-always-on; | |
303 | }; | |
304 | ||
305 | vgen6_reg: vgen6 { | |
306 | regulator-min-microvolt = <1800000>; | |
307 | regulator-max-microvolt = <3300000>; | |
308 | regulator-always-on; | |
309 | }; | |
310 | }; | |
311 | }; | |
312 | ||
313 | pciswitch: pex8609@3f { | |
314 | compatible = "plx,pex8609"; | |
315 | reg = <0x3f>; | |
316 | }; | |
317 | ||
318 | pciclkgen: si52147@6b { | |
319 | compatible = "sil,si52147"; | |
320 | reg = <0x6b>; | |
321 | }; | |
322 | }; | |
323 | ||
324 | &i2c3 { | |
325 | clock-frequency = <100000>; | |
326 | pinctrl-names = "default"; | |
327 | pinctrl-0 = <&pinctrl_i2c3>; | |
328 | status = "okay"; | |
329 | ||
330 | accelerometer: mma8450@1c { | |
331 | compatible = "fsl,mma8450"; | |
332 | reg = <0x1c>; | |
333 | }; | |
334 | ||
335 | codec: sgtl5000@0a { | |
336 | compatible = "fsl,sgtl5000"; | |
337 | reg = <0x0a>; | |
338 | clocks = <&clks 201>; | |
339 | VDDA-supply = <&sw4_reg>; | |
340 | VDDIO-supply = <®_3p3v>; | |
341 | }; | |
342 | ||
343 | hdmiin: adv7611@4c { | |
344 | compatible = "adi,adv7611"; | |
345 | reg = <0x4c>; | |
346 | }; | |
347 | ||
348 | touchscreen: egalax_ts@04 { | |
349 | compatible = "eeti,egalax_ts"; | |
350 | reg = <0x04>; | |
351 | interrupt-parent = <&gpio7>; | |
352 | interrupts = <12 2>; /* gpio7_12 active low */ | |
353 | wakeup-gpios = <&gpio7 12 0>; | |
354 | }; | |
355 | ||
356 | videoout: adv7393@2a { | |
357 | compatible = "adi,adv7393"; | |
358 | reg = <0x2a>; | |
359 | }; | |
360 | ||
361 | videoin: adv7180@20 { | |
362 | compatible = "adi,adv7180"; | |
363 | reg = <0x20>; | |
364 | }; | |
365 | }; | |
366 | ||
367 | &iomuxc { | |
368 | pinctrl-names = "default"; | |
369 | pinctrl-0 = <&pinctrl_hog>; | |
370 | ||
371 | imx6q-gw5400-a { | |
372 | pinctrl_hog: hoggrp { | |
373 | fsl,pins = < | |
374 | MX6QDL_PAD_EIM_D22__GPIO3_IO22 0x80000000 /* OTG_PWR_EN */ | |
375 | MX6QDL_PAD_EIM_D19__GPIO3_IO19 0x80000000 /* SPINOR_CS0# */ | |
376 | MX6QDL_PAD_ENET_TX_EN__GPIO1_IO28 0x80000000 /* PCIE IRQ */ | |
377 | MX6QDL_PAD_ENET_TXD1__GPIO1_IO29 0x80000000 /* PCIE RST */ | |
378 | MX6QDL_PAD_GPIO_0__CCM_CLKO1 0x000130b0 /* AUD4_MCK */ | |
379 | MX6QDL_PAD_GPIO_5__GPIO1_IO05 0x80000000 /* GPS_PPS */ | |
380 | MX6QDL_PAD_GPIO_17__GPIO7_IO12 0x80000000 /* TOUCH_IRQ# */ | |
381 | MX6QDL_PAD_KEY_COL0__GPIO4_IO06 0x80000000 /* user1 led */ | |
382 | MX6QDL_PAD_KEY_COL2__GPIO4_IO10 0x80000000 /* user2 led */ | |
383 | MX6QDL_PAD_KEY_ROW4__GPIO4_IO15 0x80000000 /* user3 led */ | |
384 | MX6QDL_PAD_SD1_DAT0__GPIO1_IO16 0x80000000 /* USBHUB_RST# */ | |
385 | MX6QDL_PAD_SD1_DAT3__GPIO1_IO21 0x80000000 /* MIPI_DIO */ | |
386 | >; | |
387 | }; | |
388 | ||
389 | pinctrl_audmux: audmuxgrp { | |
390 | fsl,pins = < | |
391 | MX6QDL_PAD_SD2_DAT0__AUD4_RXD 0x130b0 | |
392 | MX6QDL_PAD_SD2_DAT3__AUD4_TXC 0x130b0 | |
393 | MX6QDL_PAD_SD2_DAT2__AUD4_TXD 0x110b0 | |
394 | MX6QDL_PAD_SD2_DAT1__AUD4_TXFS 0x130b0 | |
395 | >; | |
396 | }; | |
397 | ||
398 | pinctrl_ecspi1: ecspi1grp { | |
399 | fsl,pins = < | |
400 | MX6QDL_PAD_EIM_D17__ECSPI1_MISO 0x100b1 | |
401 | MX6QDL_PAD_EIM_D18__ECSPI1_MOSI 0x100b1 | |
402 | MX6QDL_PAD_EIM_D16__ECSPI1_SCLK 0x100b1 | |
403 | >; | |
404 | }; | |
405 | ||
406 | pinctrl_enet: enetgrp { | |
407 | fsl,pins = < | |
408 | MX6QDL_PAD_RGMII_RXC__RGMII_RXC 0x1b0b0 | |
409 | MX6QDL_PAD_RGMII_RD0__RGMII_RD0 0x1b0b0 | |
410 | MX6QDL_PAD_RGMII_RD1__RGMII_RD1 0x1b0b0 | |
411 | MX6QDL_PAD_RGMII_RD2__RGMII_RD2 0x1b0b0 | |
412 | MX6QDL_PAD_RGMII_RD3__RGMII_RD3 0x1b0b0 | |
413 | MX6QDL_PAD_RGMII_RX_CTL__RGMII_RX_CTL 0x1b0b0 | |
414 | MX6QDL_PAD_RGMII_TXC__RGMII_TXC 0x1b0b0 | |
415 | MX6QDL_PAD_RGMII_TD0__RGMII_TD0 0x1b0b0 | |
416 | MX6QDL_PAD_RGMII_TD1__RGMII_TD1 0x1b0b0 | |
417 | MX6QDL_PAD_RGMII_TD2__RGMII_TD2 0x1b0b0 | |
418 | MX6QDL_PAD_RGMII_TD3__RGMII_TD3 0x1b0b0 | |
419 | MX6QDL_PAD_RGMII_TX_CTL__RGMII_TX_CTL 0x1b0b0 | |
420 | MX6QDL_PAD_ENET_REF_CLK__ENET_TX_CLK 0x1b0b0 | |
421 | MX6QDL_PAD_ENET_MDIO__ENET_MDIO 0x1b0b0 | |
422 | MX6QDL_PAD_ENET_MDC__ENET_MDC 0x1b0b0 | |
423 | MX6QDL_PAD_GPIO_16__ENET_REF_CLK 0x4001b0a8 | |
424 | >; | |
425 | }; | |
426 | ||
427 | pinctrl_i2c1: i2c1grp { | |
428 | fsl,pins = < | |
429 | MX6QDL_PAD_EIM_D21__I2C1_SCL 0x4001b8b1 | |
430 | MX6QDL_PAD_EIM_D28__I2C1_SDA 0x4001b8b1 | |
431 | >; | |
432 | }; | |
433 | ||
434 | pinctrl_i2c2: i2c2grp { | |
435 | fsl,pins = < | |
436 | MX6QDL_PAD_KEY_COL3__I2C2_SCL 0x4001b8b1 | |
437 | MX6QDL_PAD_KEY_ROW3__I2C2_SDA 0x4001b8b1 | |
438 | >; | |
439 | }; | |
440 | ||
441 | pinctrl_i2c3: i2c3grp { | |
442 | fsl,pins = < | |
443 | MX6QDL_PAD_GPIO_3__I2C3_SCL 0x4001b8b1 | |
444 | MX6QDL_PAD_GPIO_6__I2C3_SDA 0x4001b8b1 | |
445 | >; | |
446 | }; | |
447 | ||
448 | pinctrl_uart1: uart1grp { | |
449 | fsl,pins = < | |
450 | MX6QDL_PAD_SD3_DAT7__UART1_TX_DATA 0x1b0b1 | |
451 | MX6QDL_PAD_SD3_DAT6__UART1_RX_DATA 0x1b0b1 | |
452 | >; | |
453 | }; | |
454 | ||
455 | pinctrl_uart2: uart2grp { | |
456 | fsl,pins = < | |
457 | MX6QDL_PAD_SD4_DAT7__UART2_TX_DATA 0x1b0b1 | |
458 | MX6QDL_PAD_SD4_DAT4__UART2_RX_DATA 0x1b0b1 | |
459 | >; | |
460 | }; | |
461 | ||
462 | pinctrl_uart5: uart5grp { | |
463 | fsl,pins = < | |
464 | MX6QDL_PAD_KEY_COL1__UART5_TX_DATA 0x1b0b1 | |
465 | MX6QDL_PAD_KEY_ROW1__UART5_RX_DATA 0x1b0b1 | |
466 | >; | |
467 | }; | |
468 | ||
469 | pinctrl_usbotg: usbotggrp { | |
470 | fsl,pins = < | |
471 | MX6QDL_PAD_GPIO_1__USB_OTG_ID 0x17059 | |
472 | >; | |
473 | }; | |
474 | ||
475 | pinctrl_usdhc3: usdhc3grp { | |
476 | fsl,pins = < | |
477 | MX6QDL_PAD_SD3_CMD__SD3_CMD 0x17059 | |
478 | MX6QDL_PAD_SD3_CLK__SD3_CLK 0x10059 | |
479 | MX6QDL_PAD_SD3_DAT0__SD3_DATA0 0x17059 | |
480 | MX6QDL_PAD_SD3_DAT1__SD3_DATA1 0x17059 | |
481 | MX6QDL_PAD_SD3_DAT2__SD3_DATA2 0x17059 | |
482 | MX6QDL_PAD_SD3_DAT3__SD3_DATA3 0x17059 | |
483 | >; | |
484 | }; | |
485 | }; | |
486 | }; | |
487 | ||
488 | &ldb { | |
489 | status = "okay"; | |
e3946fe8 TH |
490 | }; |
491 | ||
492 | &pcie { | |
493 | reset-gpio = <&gpio1 29 0>; | |
494 | status = "okay"; | |
495 | ||
496 | eth1: sky2@8 { /* MAC/PHY on bus 8 */ | |
497 | compatible = "marvell,sky2"; | |
498 | }; | |
499 | }; | |
500 | ||
501 | &ssi1 { | |
502 | fsl,mode = "i2s-slave"; | |
503 | status = "okay"; | |
504 | }; | |
505 | ||
506 | &uart1 { | |
507 | pinctrl-names = "default"; | |
508 | pinctrl-0 = <&pinctrl_uart1>; | |
509 | status = "okay"; | |
510 | }; | |
511 | ||
512 | &uart2 { | |
513 | pinctrl-names = "default"; | |
514 | pinctrl-0 = <&pinctrl_uart2>; | |
515 | status = "okay"; | |
516 | }; | |
517 | ||
518 | &uart5 { | |
519 | pinctrl-names = "default"; | |
520 | pinctrl-0 = <&pinctrl_uart5>; | |
521 | status = "okay"; | |
522 | }; | |
523 | ||
524 | &usbotg { | |
525 | vbus-supply = <®_usb_otg_vbus>; | |
526 | pinctrl-names = "default"; | |
527 | pinctrl-0 = <&pinctrl_usbotg>; | |
528 | disable-over-current; | |
529 | status = "okay"; | |
530 | }; | |
531 | ||
532 | &usbh1 { | |
533 | vbus-supply = <®_usb_h1_vbus>; | |
534 | status = "okay"; | |
535 | }; | |
536 | ||
537 | &usdhc3 { | |
538 | pinctrl-names = "default"; | |
539 | pinctrl-0 = <&pinctrl_usdhc3>; | |
540 | cd-gpios = <&gpio7 0 0>; | |
541 | vmmc-supply = <®_3p3v>; | |
542 | status = "okay"; | |
543 | }; |