828fc811830a43b362676bcaca1a19647add91b7
[openwrt/svn-archive/archive.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 i.MX6 Quad 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 pinctrl-names = "default";
129 pinctrl-0 = <&pinctrl_flexcan1_1>;
130 status = "okay";
131 };
132
133 &fec {
134 pinctrl-names = "default";
135 pinctrl-0 = <&pinctrl_enet_1>;
136 phy-mode = "rgmii";
137 phy-reset-gpios = <&gpio1 30 0>;
138 status = "okay";
139 };
140
141 &gpmi {
142 pinctrl-names = "default";
143 pinctrl-0 = <&pinctrl_gpmi_nand_2>;
144 status = "okay";
145 };
146
147 &i2c1 {
148 clock-frequency = <100000>;
149 pinctrl-names = "default";
150 pinctrl-0 = <&pinctrl_i2c1_1>;
151 status = "okay";
152
153 eeprom1: eeprom@50 {
154 compatible = "atmel,24c02";
155 reg = <0x50>;
156 pagesize = <16>;
157 };
158
159 eeprom2: eeprom@51 {
160 compatible = "atmel,24c02";
161 reg = <0x51>;
162 pagesize = <16>;
163 };
164
165 eeprom3: eeprom@52 {
166 compatible = "atmel,24c02";
167 reg = <0x52>;
168 pagesize = <16>;
169 };
170
171 eeprom4: eeprom@53 {
172 compatible = "atmel,24c02";
173 reg = <0x53>;
174 pagesize = <16>;
175 };
176
177 gpio: pca9555@23 {
178 compatible = "nxp,pca9555";
179 reg = <0x23>;
180 gpio-controller;
181 #gpio-cells = <2>;
182 };
183
184 hwmon: gsc@29 {
185 compatible = "gw,gsp";
186 reg = <0x29>;
187 };
188
189 rtc: ds1672@68 {
190 compatible = "dallas,ds1672";
191 reg = <0x68>;
192 };
193 };
194
195 &i2c2 {
196 clock-frequency = <100000>;
197 pinctrl-names = "default";
198 pinctrl-0 = <&pinctrl_i2c2_2>;
199 status = "okay";
200
201 pmic: pfuze100@08 {
202 compatible = "fsl,pfuze100";
203 reg = <0x08>;
204
205 regulators {
206 sw1a_reg: sw1ab {
207 regulator-min-microvolt = <300000>;
208 regulator-max-microvolt = <1875000>;
209 regulator-boot-on;
210 regulator-always-on;
211 regulator-ramp-delay = <6250>;
212 };
213
214 sw1c_reg: sw1c {
215 regulator-min-microvolt = <300000>;
216 regulator-max-microvolt = <1875000>;
217 regulator-boot-on;
218 regulator-always-on;
219 regulator-ramp-delay = <6250>;
220 };
221
222 sw2_reg: sw2 {
223 regulator-min-microvolt = <800000>;
224 regulator-max-microvolt = <3950000>;
225 regulator-boot-on;
226 regulator-always-on;
227 };
228
229 sw3a_reg: sw3a {
230 regulator-min-microvolt = <400000>;
231 regulator-max-microvolt = <1975000>;
232 regulator-boot-on;
233 regulator-always-on;
234 };
235
236 sw3b_reg: sw3b {
237 regulator-min-microvolt = <400000>;
238 regulator-max-microvolt = <1975000>;
239 regulator-boot-on;
240 regulator-always-on;
241 };
242
243 sw4_reg: sw4 {
244 regulator-min-microvolt = <800000>;
245 regulator-max-microvolt = <3300000>;
246 };
247
248 swbst_reg: swbst {
249 regulator-min-microvolt = <5000000>;
250 regulator-max-microvolt = <5150000>;
251 };
252
253 snvs_reg: vsnvs {
254 regulator-min-microvolt = <1000000>;
255 regulator-max-microvolt = <3000000>;
256 regulator-boot-on;
257 regulator-always-on;
258 };
259
260 vref_reg: vrefddr {
261 regulator-boot-on;
262 regulator-always-on;
263 };
264
265 vgen1_reg: vgen1 {
266 regulator-min-microvolt = <800000>;
267 regulator-max-microvolt = <1550000>;
268 };
269
270 vgen2_reg: vgen2 {
271 regulator-min-microvolt = <800000>;
272 regulator-max-microvolt = <1550000>;
273 };
274
275 vgen3_reg: vgen3 {
276 regulator-min-microvolt = <1800000>;
277 regulator-max-microvolt = <3300000>;
278 };
279
280 vgen4_reg: vgen4 {
281 regulator-min-microvolt = <1800000>;
282 regulator-max-microvolt = <3300000>;
283 regulator-always-on;
284 };
285
286 vgen5_reg: vgen5 {
287 regulator-min-microvolt = <1800000>;
288 regulator-max-microvolt = <3300000>;
289 regulator-always-on;
290 };
291
292 vgen6_reg: vgen6 {
293 regulator-min-microvolt = <1800000>;
294 regulator-max-microvolt = <3300000>;
295 regulator-always-on;
296 };
297 };
298 };
299
300 pciswitch: pex8609@3f {
301 compatible = "plx,pex8609";
302 reg = <0x3f>;
303 };
304
305 pciclkgen: si52147@6b {
306 compatible = "sil,si52147";
307 reg = <0x6b>;
308 };
309 };
310
311 &i2c3 {
312 clock-frequency = <100000>;
313 pinctrl-names = "default";
314 pinctrl-0 = <&pinctrl_i2c3_2>;
315 status = "okay";
316
317 accelerometer: fxos8700@1e {
318 compatible = "fsl,fxos8700";
319 reg = <0x1e>;
320 };
321
322 codec: sgtl5000@0a {
323 compatible = "fsl,sgtl5000";
324 reg = <0x0a>;
325 clocks = <&clks 169>;
326 VDDA-supply = <&sw4_reg>;
327 VDDIO-supply = <&reg_3p3v>;
328 };
329
330 hdmiin: adv7611@4c {
331 compatible = "adi,adv7611";
332 reg = <0x4c>;
333 };
334
335 touchscreen: egalax_ts@04 {
336 compatible = "eeti,egalax_ts";
337 reg = <0x04>;
338 interrupt-parent = <&gpio7>;
339 interrupts = <12 2>; /* gpio7_12 active low */
340 wakeup-gpios = <&gpio7 12 0>;
341 };
342
343 videoout: adv7393@2a {
344 compatible = "adi,adv7393";
345 reg = <0x2a>;
346 };
347
348 videoin: adv7180@20 {
349 compatible = "adi,adv7180";
350 reg = <0x20>;
351 };
352 };
353
354 &iomuxc {
355 pinctrl-names = "default";
356 pinctrl-0 = <&pinctrl_hog>;
357
358 hog {
359 pinctrl_hog: hoggrp {
360 fsl,pins = <
361 MX6Q_PAD_EIM_D22__GPIO3_IO22 0x80000000 /* OTG_PWR_EN */
362 MX6Q_PAD_EIM_D19__GPIO3_IO19 0x80000000 /* SPINOR_CS0# */
363 MX6Q_PAD_ENET_TX_EN__GPIO1_IO28 0x80000000 /* PCIE IRQ */
364 MX6Q_PAD_ENET_TXD1__GPIO1_IO29 0x80000000 /* PCIE RST */
365 MX6Q_PAD_GPIO_0__CCM_CLKO1 0x000130b0 /* AUD4_MCK */
366 MX6Q_PAD_GPIO_2__GPIO1_IO02 0x80000000 /* CAN_STBY */
367 MX6Q_PAD_GPIO_17__GPIO7_IO12 0x80000000 /* TOUCH_IRQ# */
368 MX6Q_PAD_KEY_COL0__GPIO4_IO06 0x80000000 /* user1 led */
369 MX6Q_PAD_KEY_ROW0__GPIO4_IO07 0x80000000 /* user2 led */
370 MX6Q_PAD_KEY_ROW4__GPIO4_IO15 0x80000000 /* user3 led */
371 MX6Q_PAD_SD1_DAT0__GPIO1_IO16 0x80000000 /* USBHUB_RST# */
372 MX6Q_PAD_SD1_DAT3__GPIO1_IO21 0x80000000 /* MIPI_DIO */
373 >;
374 };
375 };
376 };
377
378 &ldb {
379 status = "okay";
380 lvds-channel@0 {
381 crtcs = <&ipu1 0>, <&ipu1 1>, <&ipu2 0>, <&ipu2 1>;
382 };
383 };
384
385 &pcie {
386 reset-gpio = <&gpio1 29 0>;
387 status = "okay";
388
389 eth1: sky2@8 { /* MAC/PHY on bus 8 */
390 compatible = "marvell,sky2";
391 /* Filled in by U-Boot */
392 mac-address = [ 00 00 00 00 00 00 ];
393 };
394 };
395
396 &sata {
397 status = "okay";
398 };
399
400 &ssi1 {
401 fsl,mode = "i2s-slave";
402 status = "okay";
403 };
404
405 &uart1 {
406 pinctrl-names = "default";
407 pinctrl-0 = <&pinctrl_uart1_2>;
408 status = "okay";
409 };
410
411 &uart2 {
412 pinctrl-names = "default";
413 pinctrl-0 = <&pinctrl_uart2_2>;
414 status = "okay";
415 };
416
417 &uart3 {
418 pinctrl-names = "default";
419 pinctrl-0 = <&pinctrl_uart3_1>;
420 status = "okay";
421 };
422
423 &uart5 {
424 pinctrl-names = "default";
425 pinctrl-0 = <&pinctrl_uart5_1>;
426 status = "okay";
427 };
428
429 &usbotg {
430 vbus-supply = <&reg_usb_otg_vbus>;
431 pinctrl-names = "default";
432 pinctrl-0 = <&pinctrl_usbotg_1>;
433 disable-over-current;
434 status = "okay";
435 };
436
437 &usbh1 {
438 vbus-supply = <&reg_usb_h1_vbus>;
439 status = "okay";
440 };
441
442 &usdhc3 {
443 pinctrl-names = "default";
444 pinctrl-0 = <&pinctrl_usdhc3_2>;
445 cd-gpios = <&gpio7 0 0>;
446 vmmc-supply = <&reg_3p3v>;
447 status = "okay";
448 };