]> git.proxmox.com Git - mirror_ubuntu-artful-kernel.git/blob - arch/arm/boot/dts/imx6q-gw5400-a.dts
Merge branch 'misc' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild
[mirror_ubuntu-artful-kernel.git] / arch / arm / boot / dts / imx6q-gw5400-a.dts
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 = &eth1;
23 i2c0 = &i2c1;
24 i2c1 = &i2c2;
25 i2c2 = &i2c3;
26 led0 = &led0;
27 led1 = &led1;
28 led2 = &led2;
29 sky2 = &eth1;
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 &hdmi {
161 ddc-i2c-bus = <&i2c3>;
162 status = "okay";
163 };
164
165 &i2c1 {
166 clock-frequency = <100000>;
167 pinctrl-names = "default";
168 pinctrl-0 = <&pinctrl_i2c1>;
169 status = "okay";
170
171 eeprom1: eeprom@50 {
172 compatible = "atmel,24c02";
173 reg = <0x50>;
174 pagesize = <16>;
175 };
176
177 eeprom2: eeprom@51 {
178 compatible = "atmel,24c02";
179 reg = <0x51>;
180 pagesize = <16>;
181 };
182
183 eeprom3: eeprom@52 {
184 compatible = "atmel,24c02";
185 reg = <0x52>;
186 pagesize = <16>;
187 };
188
189 eeprom4: eeprom@53 {
190 compatible = "atmel,24c02";
191 reg = <0x53>;
192 pagesize = <16>;
193 };
194
195 gpio: pca9555@23 {
196 compatible = "nxp,pca9555";
197 reg = <0x23>;
198 gpio-controller;
199 #gpio-cells = <2>;
200 };
201
202 hwmon: gsc@29 {
203 compatible = "gw,gsp";
204 reg = <0x29>;
205 };
206
207 rtc: ds1672@68 {
208 compatible = "dallas,ds1672";
209 reg = <0x68>;
210 };
211 };
212
213 &i2c2 {
214 clock-frequency = <100000>;
215 pinctrl-names = "default";
216 pinctrl-0 = <&pinctrl_i2c2>;
217 status = "okay";
218
219 pmic: pfuze100@08 {
220 compatible = "fsl,pfuze100";
221 reg = <0x08>;
222
223 regulators {
224 sw1a_reg: sw1ab {
225 regulator-min-microvolt = <300000>;
226 regulator-max-microvolt = <1875000>;
227 regulator-boot-on;
228 regulator-always-on;
229 regulator-ramp-delay = <6250>;
230 };
231
232 sw1c_reg: sw1c {
233 regulator-min-microvolt = <300000>;
234 regulator-max-microvolt = <1875000>;
235 regulator-boot-on;
236 regulator-always-on;
237 regulator-ramp-delay = <6250>;
238 };
239
240 sw2_reg: sw2 {
241 regulator-min-microvolt = <800000>;
242 regulator-max-microvolt = <3950000>;
243 regulator-boot-on;
244 regulator-always-on;
245 };
246
247 sw3a_reg: sw3a {
248 regulator-min-microvolt = <400000>;
249 regulator-max-microvolt = <1975000>;
250 regulator-boot-on;
251 regulator-always-on;
252 };
253
254 sw3b_reg: sw3b {
255 regulator-min-microvolt = <400000>;
256 regulator-max-microvolt = <1975000>;
257 regulator-boot-on;
258 regulator-always-on;
259 };
260
261 sw4_reg: sw4 {
262 regulator-min-microvolt = <800000>;
263 regulator-max-microvolt = <3300000>;
264 };
265
266 swbst_reg: swbst {
267 regulator-min-microvolt = <5000000>;
268 regulator-max-microvolt = <5150000>;
269 };
270
271 snvs_reg: vsnvs {
272 regulator-min-microvolt = <1000000>;
273 regulator-max-microvolt = <3000000>;
274 regulator-boot-on;
275 regulator-always-on;
276 };
277
278 vref_reg: vrefddr {
279 regulator-boot-on;
280 regulator-always-on;
281 };
282
283 vgen1_reg: vgen1 {
284 regulator-min-microvolt = <800000>;
285 regulator-max-microvolt = <1550000>;
286 };
287
288 vgen2_reg: vgen2 {
289 regulator-min-microvolt = <800000>;
290 regulator-max-microvolt = <1550000>;
291 };
292
293 vgen3_reg: vgen3 {
294 regulator-min-microvolt = <1800000>;
295 regulator-max-microvolt = <3300000>;
296 };
297
298 vgen4_reg: vgen4 {
299 regulator-min-microvolt = <1800000>;
300 regulator-max-microvolt = <3300000>;
301 regulator-always-on;
302 };
303
304 vgen5_reg: vgen5 {
305 regulator-min-microvolt = <1800000>;
306 regulator-max-microvolt = <3300000>;
307 regulator-always-on;
308 };
309
310 vgen6_reg: vgen6 {
311 regulator-min-microvolt = <1800000>;
312 regulator-max-microvolt = <3300000>;
313 regulator-always-on;
314 };
315 };
316 };
317
318 pciswitch: pex8609@3f {
319 compatible = "plx,pex8609";
320 reg = <0x3f>;
321 };
322
323 pciclkgen: si52147@6b {
324 compatible = "sil,si52147";
325 reg = <0x6b>;
326 };
327 };
328
329 &i2c3 {
330 clock-frequency = <100000>;
331 pinctrl-names = "default";
332 pinctrl-0 = <&pinctrl_i2c3>;
333 status = "okay";
334
335 accelerometer: mma8450@1c {
336 compatible = "fsl,mma8450";
337 reg = <0x1c>;
338 };
339
340 codec: sgtl5000@0a {
341 compatible = "fsl,sgtl5000";
342 reg = <0x0a>;
343 clocks = <&clks 201>;
344 VDDA-supply = <&sw4_reg>;
345 VDDIO-supply = <&reg_3p3v>;
346 };
347
348 hdmiin: adv7611@4c {
349 compatible = "adi,adv7611";
350 reg = <0x4c>;
351 };
352
353 touchscreen: egalax_ts@04 {
354 compatible = "eeti,egalax_ts";
355 reg = <0x04>;
356 interrupt-parent = <&gpio7>;
357 interrupts = <12 2>; /* gpio7_12 active low */
358 wakeup-gpios = <&gpio7 12 0>;
359 };
360
361 videoout: adv7393@2a {
362 compatible = "adi,adv7393";
363 reg = <0x2a>;
364 };
365
366 videoin: adv7180@20 {
367 compatible = "adi,adv7180";
368 reg = <0x20>;
369 };
370 };
371
372 &iomuxc {
373 pinctrl-names = "default";
374 pinctrl-0 = <&pinctrl_hog>;
375
376 imx6q-gw5400-a {
377 pinctrl_hog: hoggrp {
378 fsl,pins = <
379 MX6QDL_PAD_EIM_D22__GPIO3_IO22 0x80000000 /* OTG_PWR_EN */
380 MX6QDL_PAD_EIM_D19__GPIO3_IO19 0x80000000 /* SPINOR_CS0# */
381 MX6QDL_PAD_ENET_TX_EN__GPIO1_IO28 0x80000000 /* PCIE IRQ */
382 MX6QDL_PAD_ENET_TXD1__GPIO1_IO29 0x80000000 /* PCIE RST */
383 MX6QDL_PAD_GPIO_0__CCM_CLKO1 0x000130b0 /* AUD4_MCK */
384 MX6QDL_PAD_GPIO_5__GPIO1_IO05 0x80000000 /* GPS_PPS */
385 MX6QDL_PAD_GPIO_17__GPIO7_IO12 0x80000000 /* TOUCH_IRQ# */
386 MX6QDL_PAD_KEY_COL0__GPIO4_IO06 0x80000000 /* user1 led */
387 MX6QDL_PAD_KEY_COL2__GPIO4_IO10 0x80000000 /* user2 led */
388 MX6QDL_PAD_KEY_ROW4__GPIO4_IO15 0x80000000 /* user3 led */
389 MX6QDL_PAD_SD1_DAT0__GPIO1_IO16 0x80000000 /* USBHUB_RST# */
390 MX6QDL_PAD_SD1_DAT3__GPIO1_IO21 0x80000000 /* MIPI_DIO */
391 >;
392 };
393
394 pinctrl_audmux: audmuxgrp {
395 fsl,pins = <
396 MX6QDL_PAD_SD2_DAT0__AUD4_RXD 0x130b0
397 MX6QDL_PAD_SD2_DAT3__AUD4_TXC 0x130b0
398 MX6QDL_PAD_SD2_DAT2__AUD4_TXD 0x110b0
399 MX6QDL_PAD_SD2_DAT1__AUD4_TXFS 0x130b0
400 >;
401 };
402
403 pinctrl_ecspi1: ecspi1grp {
404 fsl,pins = <
405 MX6QDL_PAD_EIM_D17__ECSPI1_MISO 0x100b1
406 MX6QDL_PAD_EIM_D18__ECSPI1_MOSI 0x100b1
407 MX6QDL_PAD_EIM_D16__ECSPI1_SCLK 0x100b1
408 >;
409 };
410
411 pinctrl_enet: enetgrp {
412 fsl,pins = <
413 MX6QDL_PAD_RGMII_RXC__RGMII_RXC 0x1b0b0
414 MX6QDL_PAD_RGMII_RD0__RGMII_RD0 0x1b0b0
415 MX6QDL_PAD_RGMII_RD1__RGMII_RD1 0x1b0b0
416 MX6QDL_PAD_RGMII_RD2__RGMII_RD2 0x1b0b0
417 MX6QDL_PAD_RGMII_RD3__RGMII_RD3 0x1b0b0
418 MX6QDL_PAD_RGMII_RX_CTL__RGMII_RX_CTL 0x1b0b0
419 MX6QDL_PAD_RGMII_TXC__RGMII_TXC 0x1b0b0
420 MX6QDL_PAD_RGMII_TD0__RGMII_TD0 0x1b0b0
421 MX6QDL_PAD_RGMII_TD1__RGMII_TD1 0x1b0b0
422 MX6QDL_PAD_RGMII_TD2__RGMII_TD2 0x1b0b0
423 MX6QDL_PAD_RGMII_TD3__RGMII_TD3 0x1b0b0
424 MX6QDL_PAD_RGMII_TX_CTL__RGMII_TX_CTL 0x1b0b0
425 MX6QDL_PAD_ENET_REF_CLK__ENET_TX_CLK 0x1b0b0
426 MX6QDL_PAD_ENET_MDIO__ENET_MDIO 0x1b0b0
427 MX6QDL_PAD_ENET_MDC__ENET_MDC 0x1b0b0
428 MX6QDL_PAD_GPIO_16__ENET_REF_CLK 0x4001b0a8
429 >;
430 };
431
432 pinctrl_i2c1: i2c1grp {
433 fsl,pins = <
434 MX6QDL_PAD_EIM_D21__I2C1_SCL 0x4001b8b1
435 MX6QDL_PAD_EIM_D28__I2C1_SDA 0x4001b8b1
436 >;
437 };
438
439 pinctrl_i2c2: i2c2grp {
440 fsl,pins = <
441 MX6QDL_PAD_KEY_COL3__I2C2_SCL 0x4001b8b1
442 MX6QDL_PAD_KEY_ROW3__I2C2_SDA 0x4001b8b1
443 >;
444 };
445
446 pinctrl_i2c3: i2c3grp {
447 fsl,pins = <
448 MX6QDL_PAD_GPIO_3__I2C3_SCL 0x4001b8b1
449 MX6QDL_PAD_GPIO_6__I2C3_SDA 0x4001b8b1
450 >;
451 };
452
453 pinctrl_uart1: uart1grp {
454 fsl,pins = <
455 MX6QDL_PAD_SD3_DAT7__UART1_TX_DATA 0x1b0b1
456 MX6QDL_PAD_SD3_DAT6__UART1_RX_DATA 0x1b0b1
457 >;
458 };
459
460 pinctrl_uart2: uart2grp {
461 fsl,pins = <
462 MX6QDL_PAD_SD4_DAT7__UART2_TX_DATA 0x1b0b1
463 MX6QDL_PAD_SD4_DAT4__UART2_RX_DATA 0x1b0b1
464 >;
465 };
466
467 pinctrl_uart5: uart5grp {
468 fsl,pins = <
469 MX6QDL_PAD_KEY_COL1__UART5_TX_DATA 0x1b0b1
470 MX6QDL_PAD_KEY_ROW1__UART5_RX_DATA 0x1b0b1
471 >;
472 };
473
474 pinctrl_usbotg: usbotggrp {
475 fsl,pins = <
476 MX6QDL_PAD_GPIO_1__USB_OTG_ID 0x17059
477 >;
478 };
479
480 pinctrl_usdhc3: usdhc3grp {
481 fsl,pins = <
482 MX6QDL_PAD_SD3_CMD__SD3_CMD 0x17059
483 MX6QDL_PAD_SD3_CLK__SD3_CLK 0x10059
484 MX6QDL_PAD_SD3_DAT0__SD3_DATA0 0x17059
485 MX6QDL_PAD_SD3_DAT1__SD3_DATA1 0x17059
486 MX6QDL_PAD_SD3_DAT2__SD3_DATA2 0x17059
487 MX6QDL_PAD_SD3_DAT3__SD3_DATA3 0x17059
488 >;
489 };
490 };
491 };
492
493 &ldb {
494 status = "okay";
495 };
496
497 &pcie {
498 reset-gpio = <&gpio1 29 0>;
499 status = "okay";
500
501 eth1: sky2@8 { /* MAC/PHY on bus 8 */
502 compatible = "marvell,sky2";
503 };
504 };
505
506 &ssi1 {
507 fsl,mode = "i2s-slave";
508 status = "okay";
509 };
510
511 &uart1 {
512 pinctrl-names = "default";
513 pinctrl-0 = <&pinctrl_uart1>;
514 status = "okay";
515 };
516
517 &uart2 {
518 pinctrl-names = "default";
519 pinctrl-0 = <&pinctrl_uart2>;
520 status = "okay";
521 };
522
523 &uart5 {
524 pinctrl-names = "default";
525 pinctrl-0 = <&pinctrl_uart5>;
526 status = "okay";
527 };
528
529 &usbotg {
530 vbus-supply = <&reg_usb_otg_vbus>;
531 pinctrl-names = "default";
532 pinctrl-0 = <&pinctrl_usbotg>;
533 disable-over-current;
534 status = "okay";
535 };
536
537 &usbh1 {
538 vbus-supply = <&reg_usb_h1_vbus>;
539 status = "okay";
540 };
541
542 &usdhc3 {
543 pinctrl-names = "default";
544 pinctrl-0 = <&pinctrl_usdhc3>;
545 cd-gpios = <&gpio7 0 0>;
546 vmmc-supply = <&reg_3p3v>;
547 status = "okay";
548 };