kernel: refresh 3.12 patches on -rc7 release
[openwrt.git] / target / linux / imx6 / files-3.10 / arch / arm / boot / dts / imx6q-gw54xx.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 GW54XX";
17         compatible = "gw,imx6q-gw54xx", "gw,ventana", "fsl,imx6q";
18
19         /* these are used by bootloader for disabling nodes */
20         aliases {
21                 can0 = &can1;
22                 ethernet0 = &fec;
23                 ethernet1 = &eth1;
24                 i2c0 = &i2c1;
25                 i2c1 = &i2c2;
26                 i2c2 = &i2c3;
27                 led0 = &led0;
28                 led1 = &led1;
29                 led2 = &led2;
30                 nand = &gpmi;
31                 sky2 = &eth1;
32                 ssi0 = &ssi1;
33                 usb0 = &usbh1;
34                 usb1 = &usbotg;
35                 usdhc2 = &usdhc3;
36         };
37
38         chosen {
39                 bootargs = "console=ttymxc1,115200";
40         };
41
42         memory {
43                 reg = <0x10000000 0x40000000>;
44         };
45
46         leds {
47                 compatible = "gpio-leds";
48
49                 led0: user1 {
50                         label = "user1";
51                         gpios = <&gpio4 6 0>; /* 102 -> MX6_PANLEDG */
52                         default-state = "on";
53                         linux,default-trigger = "heartbeat";
54                 };
55
56                 led1: user2 {
57                         label = "user2";
58                         gpios = <&gpio4 7 0>; /* 103 -> MX6_PANLEDR */
59                         default-state = "off";
60                 };
61
62                 led2: user3 {
63                         label = "user3";
64                         gpios = <&gpio4 15 1>; /* 111 -> MX6_LOCLED# */
65                         default-state = "off";
66                 };
67         };
68
69         regulators {
70                 compatible = "simple-bus";
71
72                 reg_1p0v: 1p0v {
73                         compatible = "regulator-fixed";
74                         regulator-name = "1P0V";
75                         regulator-min-microvolt = <1000000>;
76                         regulator-max-microvolt = <1000000>;
77                         regulator-always-on;
78                 };
79
80                 reg_3p3v: 3p3v {
81                         compatible = "regulator-fixed";
82                         regulator-name = "3P3V";
83                         regulator-min-microvolt = <3300000>;
84                         regulator-max-microvolt = <3300000>;
85                         regulator-always-on;
86                 };
87
88                 reg_usb_h1_vbus: usb_h1_vbus {
89                         compatible = "regulator-fixed";
90                         regulator-name = "usb_h1_vbus";
91                         regulator-min-microvolt = <5000000>;
92                         regulator-max-microvolt = <5000000>;
93                         regulator-always-on;
94                 };
95
96                 reg_usb_otg_vbus: usb_otg_vbus {
97                         compatible = "regulator-fixed";
98                         regulator-name = "usb_otg_vbus";
99                         regulator-min-microvolt = <5000000>;
100                         regulator-max-microvolt = <5000000>;
101                         gpio = <&gpio3 22 0>;
102                         enable-active-high;
103                 };
104         };
105
106         sound {
107                 compatible = "fsl,imx6q-sabrelite-sgtl5000",
108                              "fsl,imx-audio-sgtl5000";
109                 model = "imx6q-sabrelite-sgtl5000";
110                 ssi-controller = <&ssi1>;
111                 audio-codec = <&codec>;
112                 audio-routing =
113                         "MIC_IN", "Mic Jack",
114                         "Mic Jack", "Mic Bias",
115                         "Headphone Jack", "HP_OUT";
116                 mux-int-port = <1>;
117                 mux-ext-port = <4>;
118         };
119 };
120
121 &audmux {
122         pinctrl-names = "default";
123         pinctrl-0 = <&pinctrl_audmux_1>;
124         status = "okay";
125 };
126
127 &can1 {
128         status = "okay";
129 };
130
131 &fec {
132         pinctrl-names = "default";
133         pinctrl-0 = <&pinctrl_enet_1>;
134         phy-mode = "rgmii";
135         phy-reset-gpios = <&gpio1 30 0>;
136         status = "okay";
137 };
138
139 &gpmi {
140         pinctrl-names = "default";
141         pinctrl-0 = <&pinctrl_gpmi_nand_2>;
142         status = "okay";
143 };
144
145 &i2c1 {
146         clock-frequency = <100000>;
147         pinctrl-names = "default";
148         pinctrl-0 = <&pinctrl_i2c1_1>;
149         status = "okay";
150
151         eeprom1: eeprom@50 {
152                 compatible = "atmel,24c02";
153                 reg = <0x50>;
154                 pagesize = <16>;
155         };
156
157         eeprom2: eeprom@51 {
158                 compatible = "atmel,24c02";
159                 reg = <0x51>;
160                 pagesize = <16>;
161         };
162
163         eeprom3: eeprom@52 {
164                 compatible = "atmel,24c02";
165                 reg = <0x52>;
166                 pagesize = <16>;
167         };
168
169         eeprom4: eeprom@53 {
170                 compatible = "atmel,24c02";
171                 reg = <0x53>;
172                 pagesize = <16>;
173         };
174
175         gpio: pca9555@23 {
176                 compatible = "nxp,pca9555";
177                 reg = <0x23>;
178                 gpio-controller;
179                 #gpio-cells = <2>;
180         };
181
182         hwmon: gsc@29 {
183                 compatible = "gw,gsp";
184                 reg = <0x29>;
185         };
186
187         rtc: ds1672@68 {
188                 compatible = "dallas,ds1672";
189                 reg = <0x68>;
190         };
191 };
192
193 &i2c2 {
194         clock-frequency = <100000>;
195         pinctrl-names = "default";
196         pinctrl-0 = <&pinctrl_i2c2_2>;
197         status = "okay";
198
199         pmic: pfuze100@08 {
200                 compatible = "fsl,pfuze100";
201                 reg = <0x08>;
202
203                 regulators {
204                         sw1a_reg: sw1ab {
205                                 regulator-min-microvolt = <300000>;
206                                 regulator-max-microvolt = <1875000>;
207                                 regulator-boot-on;
208                                 regulator-always-on;
209                                 regulator-ramp-delay = <6250>;
210                         };
211
212                         sw1c_reg: sw1c {
213                                 regulator-min-microvolt = <300000>;
214                                 regulator-max-microvolt = <1875000>;
215                                 regulator-boot-on;
216                                 regulator-always-on;
217                                 regulator-ramp-delay = <6250>;
218                         };
219
220                         sw2_reg: sw2 {
221                                 regulator-min-microvolt = <800000>;
222                                 regulator-max-microvolt = <3950000>;
223                                 regulator-boot-on;
224                                 regulator-always-on;
225                         };
226
227                         sw3a_reg: sw3a {
228                                 regulator-min-microvolt = <400000>;
229                                 regulator-max-microvolt = <1975000>;
230                                 regulator-boot-on;
231                                 regulator-always-on;
232                         };
233
234                         sw3b_reg: sw3b {
235                                 regulator-min-microvolt = <400000>;
236                                 regulator-max-microvolt = <1975000>;
237                                 regulator-boot-on;
238                                 regulator-always-on;
239                         };
240
241                         sw4_reg: sw4 {
242                                 regulator-min-microvolt = <800000>;
243                                 regulator-max-microvolt = <3300000>;
244                         };
245
246                         swbst_reg: swbst {
247                                 regulator-min-microvolt = <5000000>;
248                                 regulator-max-microvolt = <5150000>;
249                         };
250
251                         snvs_reg: vsnvs {
252                                 regulator-min-microvolt = <1000000>;
253                                 regulator-max-microvolt = <3000000>;
254                                 regulator-boot-on;
255                                 regulator-always-on;
256                         };
257
258                         vref_reg: vrefddr {
259                                 regulator-boot-on;
260                                 regulator-always-on;
261                         };
262
263                         vgen1_reg: vgen1 {
264                                 regulator-min-microvolt = <800000>;
265                                 regulator-max-microvolt = <1550000>;
266                         };
267
268                         vgen2_reg: vgen2 {
269                                 regulator-min-microvolt = <800000>;
270                                 regulator-max-microvolt = <1550000>;
271                         };
272
273                         vgen3_reg: vgen3 {
274                                 regulator-min-microvolt = <1800000>;
275                                 regulator-max-microvolt = <3300000>;
276                         };
277
278                         vgen4_reg: vgen4 {
279                                 regulator-min-microvolt = <1800000>;
280                                 regulator-max-microvolt = <3300000>;
281                                 regulator-always-on;
282                         };
283
284                         vgen5_reg: vgen5 {
285                                 regulator-min-microvolt = <1800000>;
286                                 regulator-max-microvolt = <3300000>;
287                                 regulator-always-on;
288                         };
289
290                         vgen6_reg: vgen6 {
291                                 regulator-min-microvolt = <1800000>;
292                                 regulator-max-microvolt = <3300000>;
293                                 regulator-always-on;
294                         };
295                 };
296         };
297
298         pciswitch: pex8609@3f {
299                 compatible = "plx,pex8609";
300                 reg = <0x3f>;
301         };
302
303         pciclkgen: si52147@6b {
304                 compatible = "sil,si52147";
305                 reg = <0x6b>;
306         };
307 };
308
309 &i2c3 {
310         clock-frequency = <100000>;
311         pinctrl-names = "default";
312         pinctrl-0 = <&pinctrl_i2c3_2>;
313         status = "okay";
314
315         accelerometer: fxos8700@1e {
316                 compatible = "fsl,fxos8700";
317                 reg = <0x1e>;
318         };
319
320         codec: sgtl5000@0a {
321                 compatible = "fsl,sgtl5000";
322                 reg = <0x0a>;
323                 clocks = <&clks 169>;
324                 VDDA-supply = <&sw4_reg>;
325                 VDDIO-supply = <&reg_3p3v>;
326         };
327
328         hdmiin: adv7611@4c {
329                 compatible = "adi,adv7611";
330                 reg = <0x4c>;
331         };
332
333         touchscreen: egalax_ts@04 {
334                 compatible = "eeti,egalax_ts";
335                 reg = <0x04>;
336                 interrupt-parent = <&gpio7>;
337                 interrupts = <12 2>; /* gpio7_12 active low */
338                 wakeup-gpios = <&gpio7 12 0>;
339         };
340
341         videoout: adv7393@2a {
342                 compatible = "adi,adv7393";
343                 reg = <0x2a>;
344         };
345
346         videoin: adv7180@20 {
347                 compatible = "adi,adv7180";
348                 reg = <0x20>;
349         };
350 };
351
352 &iomuxc {
353         pinctrl-names = "default";
354         pinctrl-0 = <&pinctrl_hog>;
355
356         hog {
357                 pinctrl_hog: hoggrp {
358                         fsl,pins = <
359                                 MX6Q_PAD_EIM_D22__GPIO3_IO22    0x80000000 /* OTG_PWR_EN */
360                                 MX6Q_PAD_EIM_D19__GPIO3_IO19    0x80000000 /* SPINOR_CS0# */
361                                 MX6Q_PAD_ENET_TX_EN__GPIO1_IO28 0x80000000 /* PCIE IRQ */
362                                 MX6Q_PAD_ENET_TXD1__GPIO1_IO29  0x80000000 /* PCIE RST */
363                                 MX6Q_PAD_GPIO_0__CCM_CLKO1      0x000130b0 /* AUD4_MCK */
364                                 MX6Q_PAD_GPIO_2__GPIO1_IO02     0x80000000 /* CAN_STBY */
365                                 MX6Q_PAD_GPIO_17__GPIO7_IO12    0x80000000 /* TOUCH_IRQ# */
366                                 MX6Q_PAD_KEY_COL0__GPIO4_IO06   0x80000000 /* user1 led */
367                                 MX6Q_PAD_KEY_ROW0__GPIO4_IO07   0x80000000 /* user2 led */
368                                 MX6Q_PAD_KEY_ROW4__GPIO4_IO15   0x80000000 /* user3 led */
369                                 MX6Q_PAD_SD1_DAT0__GPIO1_IO16   0x80000000 /* USBHUB_RST# */
370                                 MX6Q_PAD_SD1_DAT3__GPIO1_IO21   0x80000000 /* MIPI_DIO */
371                          >;
372                 };
373         };
374 };
375
376 &ldb {
377         status = "okay";
378         lvds-channel@0 {
379                 crtcs = <&ipu1 0>, <&ipu1 1>, <&ipu2 0>, <&ipu2 1>;
380         };
381 };
382
383 &pcie {
384         reset-gpio = <&gpio1 29 0>;
385         status = "okay";
386
387         eth1: sky2@8 { /* MAC/PHY on bus 8 */
388                 compatible = "marvell,sky2";
389                 /* Filled in by U-Boot */
390                 mac-address = [ 00 00 00 00 00 00 ];
391         };
392 };
393
394 &sata {
395         status = "okay";
396 };
397
398 &ssi1 {
399         fsl,mode = "i2s-slave";
400         status = "okay";
401 };
402
403 &uart1 {
404         pinctrl-names = "default";
405         pinctrl-0 = <&pinctrl_uart1_2>;
406         status = "okay";
407 };
408
409 &uart2 {
410         pinctrl-names = "default";
411         pinctrl-0 = <&pinctrl_uart2_2>;
412         status = "okay";
413 };
414
415 &uart3 {
416         pinctrl-names = "default";
417         pinctrl-0 = <&pinctrl_uart3_1>;
418         status = "okay";
419 };
420
421 &uart5 {
422         pinctrl-names = "default";
423         pinctrl-0 = <&pinctrl_uart5_1>;
424         status = "okay";
425 };
426
427 &usbotg {
428         vbus-supply = <&reg_usb_otg_vbus>;
429         pinctrl-names = "default";
430         pinctrl-0 = <&pinctrl_usbotg_1>;
431         disable-over-current;
432         status = "okay";
433 };
434
435 &usbh1 {
436         vbus-supply = <&reg_usb_h1_vbus>;
437         status = "okay";
438 };
439
440 &usdhc3 {
441         pinctrl-names = "default";
442         pinctrl-0 = <&pinctrl_usdhc3_2>;
443         cd-gpios = <&gpio7 0 0>;
444         vmmc-supply = <&reg_3p3v>;
445         status = "okay";
446 };