5524782ad715c116a83cbfc0e4b301a021d1c149
[openwrt.git] / target / linux / imx6 / files-3.10 / arch / arm / boot / dts / imx6qdl-gw52xx.dtsi
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 / {
13         /* these are used by bootloader for disabling nodes */
14         aliases {
15                 can0 = &can1;
16                 ethernet0 = &fec;
17                 i2c0 = &i2c1;
18                 i2c1 = &i2c2;
19                 i2c2 = &i2c3;
20                 led0 = &led0;
21                 led1 = &led1;
22                 led2 = &led2;
23                 nand = &gpmi;
24                 ssi0 = &ssi1;
25                 usb0 = &usbh1;
26                 usb1 = &usbotg;
27                 usdhc2 = &usdhc3;
28         };
29
30         leds {
31                 compatible = "gpio-leds";
32
33                 led0: user1 {
34                         label = "user1";
35                         gpios = <&gpio4 6 0>; /* 102 -> MX6_PANLEDG */
36                         default-state = "on";
37                         linux,default-trigger = "heartbeat";
38                 };
39
40                 led1: user2 {
41                         label = "user2";
42                         gpios = <&gpio4 7 0>; /* 103 -> MX6_PANLEDR */
43                         default-state = "off";
44                 };
45
46                 led2: user3 {
47                         label = "user3";
48                         gpios = <&gpio4 15 1>; /* 111 - MX6_LOCLED# */
49                         default-state = "off";
50                 };
51         };
52
53         memory {
54                 reg = <0x10000000 0x20000000>;
55         };
56
57         regulators {
58                 compatible = "simple-bus";
59
60                 reg_1p0v: 1p0v {
61                         compatible = "regulator-fixed";
62                         regulator-name = "1P0V";
63                         regulator-min-microvolt = <1000000>;
64                         regulator-max-microvolt = <1000000>;
65                         regulator-always-on;
66                 };
67
68                 /* remove this fixed regulator once ltc3676__sw2 driver available */
69                 reg_1p8v: 1p8v {
70                         compatible = "regulator-fixed";
71                         regulator-name = "1P8V";
72                         regulator-min-microvolt = <1800000>;
73                         regulator-max-microvolt = <1800000>;
74                         regulator-always-on;
75                 };
76
77                 reg_3p3v: 3p3v {
78                         compatible = "regulator-fixed";
79                         regulator-name = "3P3V";
80                         regulator-min-microvolt = <3300000>;
81                         regulator-max-microvolt = <3300000>;
82                         regulator-always-on;
83                 };
84
85                 reg_5p0v: 5p0v {
86                         compatible = "regulator-fixed";
87                         regulator-name = "5P0V";
88                         regulator-min-microvolt = <5000000>;
89                         regulator-max-microvolt = <5000000>;
90                         regulator-always-on;
91                 };
92
93                 reg_usb_otg_vbus: usb_otg_vbus {
94                         compatible = "regulator-fixed";
95                         regulator-name = "usb_otg_vbus";
96                         regulator-min-microvolt = <5000000>;
97                         regulator-max-microvolt = <5000000>;
98                         gpio = <&gpio3 22 0>;
99                         enable-active-high;
100                 };
101         };
102
103         sound {
104                 compatible = "fsl,imx6q-sabrelite-sgtl5000",
105                              "fsl,imx-audio-sgtl5000";
106                 model = "imx6q-sabrelite-sgtl5000";
107                 ssi-controller = <&ssi1>;
108                 audio-codec = <&codec>;
109                 audio-routing =
110                         "MIC_IN", "Mic Jack",
111                         "Mic Jack", "Mic Bias",
112                         "Headphone Jack", "HP_OUT";
113                 mux-int-port = <1>;
114                 mux-ext-port = <4>;
115         };
116 };
117
118 &audmux {
119         pinctrl-names = "default";
120         pinctrl-0 = <&pinctrl_audmux_1>;
121         status = "okay";
122 };
123
124 &can1 {
125         pinctrl-names = "default";
126         pinctrl-0 = <&pinctrl_flexcan1_1>;
127         status = "okay";
128 };
129
130 &fec {
131         pinctrl-names = "default";
132         pinctrl-0 = <&pinctrl_enet_1>;
133         phy-mode = "rgmii";
134         phy-reset-gpios = <&gpio1 30 0>;
135         status = "okay";
136 };
137
138 &gpmi {
139         pinctrl-names = "default";
140         pinctrl-0 = <&pinctrl_gpmi_nand_2>;
141         status = "okay";
142 };
143
144 &i2c1 {
145         clock-frequency = <100000>;
146         pinctrl-names = "default";
147         pinctrl-0 = <&pinctrl_i2c1_1>;
148         status = "okay";
149
150         eeprom1: eeprom@50 {
151                 compatible = "atmel,24c02";
152                 reg = <0x50>;
153                 pagesize = <16>;
154         };
155
156         eeprom2: eeprom@51 {
157                 compatible = "atmel,24c02";
158                 reg = <0x51>;
159                 pagesize = <16>;
160         };
161
162         eeprom3: eeprom@52 {
163                 compatible = "atmel,24c02";
164                 reg = <0x52>;
165                 pagesize = <16>;
166         };
167
168         eeprom4: eeprom@53 {
169                 compatible = "atmel,24c02";
170                 reg = <0x53>;
171                 pagesize = <16>;
172         };
173
174         gpio: pca9555@23 {
175                 compatible = "nxp,pca9555";
176                 reg = <0x23>;
177                 gpio-controller;
178                 #gpio-cells = <2>;
179         };
180
181         hwmon: gsc@29 {
182                 compatible = "gw,gsp";
183                 reg = <0x29>;
184         };
185
186         rtc: ds1672@68 {
187                 compatible = "dallas,ds1672";
188                 reg = <0x68>;
189         };
190 };
191
192 &i2c2 {
193         clock-frequency = <100000>;
194         pinctrl-names = "default";
195         pinctrl-0 = <&pinctrl_i2c2_2>;
196         status = "okay";
197
198         pciswitch: pex8609@3f {
199                 compatible = "plx,pex8609";
200                 reg = <0x3f>;
201         };
202
203         pmic: ltc3676@3c {
204                 compatible = "ltc,ltc3676";
205                 reg = <0x3c>;
206
207                 regulators {
208                         sw1_reg: ltc3676__sw1 {
209                                 regulator-min-microvolt = <1175000>;
210                                 regulator-max-microvolt = <1175000>;
211                                 regulator-boot-on;
212                                 regulator-always-on;
213                         };
214
215                         sw2_reg: ltc3676__sw2 {
216                                 regulator-min-microvolt = <1800000>;
217                                 regulator-max-microvolt = <1800000>;
218                                 regulator-boot-on;
219                                 regulator-always-on;
220                         };
221
222                         sw3_reg: ltc3676__sw3 {
223                                 regulator-min-microvolt = <1175000>;
224                                 regulator-max-microvolt = <1175000>;
225                                 regulator-boot-on;
226                                 regulator-always-on;
227                         };
228
229                         sw4_reg: ltc3676__sw4 {
230                                 regulator-min-microvolt = <1500000>;
231                                 regulator-max-microvolt = <1500000>;
232                                 regulator-boot-on;
233                                 regulator-always-on;
234                         };
235
236                         ldo2_reg: ltc3676__ldo2 {
237                                 regulator-min-microvolt = <2500000>;
238                                 regulator-max-microvolt = <2500000>;
239                                 regulator-boot-on;
240                                 regulator-always-on;
241                         };
242
243                         ldo3_reg: ltc3676__ldo3 {
244                                 regulator-min-microvolt = <1800000>;
245                                 regulator-max-microvolt = <1800000>;
246                                 regulator-boot-on;
247                                 regulator-always-on;
248                         };
249
250                         ldo4_reg: ltc3676__ldo4 {
251                                 regulator-min-microvolt = <3000000>;
252                                 regulator-max-microvolt = <3000000>;
253                         };
254                 };
255         };
256 };
257
258 &i2c3 {
259         clock-frequency = <100000>;
260         pinctrl-names = "default";
261         pinctrl-0 = <&pinctrl_i2c3_2>;
262         status = "okay";
263
264         accelerometer: fxos8700@1e {
265                 compatible = "fsl,fxos8700";
266                 reg = <0x13>;
267         };
268
269         codec: sgtl5000@0a {
270                 compatible = "fsl,sgtl5000";
271                 reg = <0x0a>;
272                 clocks = <&clks 169>;
273                 VDDA-supply = <&reg_1p8v>;
274                 VDDIO-supply = <&reg_3p3v>;
275         };
276
277         touchscreen: egalax_ts@04 {
278                 compatible = "eeti,egalax_ts";
279                 reg = <0x04>;
280                 interrupt-parent = <&gpio7>;
281                 interrupts = <12 2>; /* gpio7_12 active low */
282                 wakeup-gpios = <&gpio7 12 0>;
283         };
284
285         videoin: adv7180@20 {
286                 compatible = "adi,adv7180";
287                 reg = <0x20>;
288         };
289 };
290
291 &ldb {
292         status = "okay";
293         lvds-channel@0 {
294                 crtcs = <&ipu1 0>, <&ipu1 1>;
295         };
296 };
297
298 &pcie {
299         reset-gpio = <&gpio1 29 0>;
300         status = "okay";
301 };
302
303 &ssi1 {
304         fsl,mode = "i2s-slave";
305         status = "okay";
306 };
307
308 &uart1 {
309         pinctrl-names = "default";
310         pinctrl-0 = <&pinctrl_uart1_2>;
311         status = "okay";
312 };
313
314 &uart2 {
315         pinctrl-names = "default";
316         pinctrl-0 = <&pinctrl_uart2_3>;
317         status = "okay";
318 };
319
320 &uart5 {
321         pinctrl-names = "default";
322         pinctrl-0 = <&pinctrl_uart5_1>;
323         status = "okay";
324 };
325
326 &usbotg {
327         vbus-supply = <&reg_usb_otg_vbus>;
328         pinctrl-names = "default";
329         pinctrl-0 = <&pinctrl_usbotg_1>;
330         disable-over-current;
331         status = "okay";
332 };
333
334 &usbh1 {
335         status = "okay";
336 };
337
338 &usdhc3 {
339         pinctrl-names = "default";
340         pinctrl-0 = <&pinctrl_usdhc3_2>;
341         cd-gpios = <&gpio7 0 0>;
342         vmmc-supply = <&reg_3p3v>;
343         status = "okay";
344 };