imx6: add support for gw51xx
[openwrt.git] / target / linux / imx6 / files-3.10 / arch / arm / boot / dts / imx6dl-gw51xx.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 "imx6dl.dtsi"
14
15 / {
16         model = "Gateworks Ventana GW51XX";
17         compatible = "gw,imx6dl-gw51xx", "gw,ventana", "fsl,imx6dl";
18
19         /* these are used by bootloader for disabling nodes */
20         aliases {
21                 can0 = &can1;
22                 ethernet0 = &fec;
23                 i2c0 = &i2c1;
24                 i2c1 = &i2c2;
25                 i2c2 = &i2c3;
26                 ipu0 = &ipu1;
27                 led0 = &led0;
28                 led1 = &led1;
29                 nand = &gpmi;
30                 pwm0 = &pwm1;
31                 pwm1 = &pwm2;
32                 pwm2 = &pwm3;
33                 pwm3 = &pwm4;
34                 spi0 = &ecspi1;
35                 spi1 = &ecspi2;
36                 spi2 = &ecspi3;
37                 spi3 = &ecspi4;
38                 ssi0 = &ssi1;
39                 ssi1 = &ssi2;
40                 usb0 = &usbh3;
41                 usb1 = &usbotg;
42                 usdhc0 = &usdhc1;
43                 usdhc1 = &usdhc2;
44                 usdhc2 = &usdhc3;
45                 usdhc3 = &usdhc4;
46         };
47
48         memory {
49                 reg = <0x10000000 0x40000000>;
50         };
51
52         leds {
53                 compatible = "gpio-leds";
54
55                 led0: user1 {
56                         label = "user1";
57                         gpios = <&gpio4 6 0>; /* 102 -> MX6_PANLEDG */
58                         default-state = "on";
59                         linux,default-trigger = "heartbeat";
60                 };
61
62                 led1: user2 {
63                         label = "user2";
64                         gpios = <&gpio4 7 0>; /* 103 -> MX6_PANLEDR */
65                         default-state = "off";
66                 };
67         };
68
69         regulators {
70                 compatible = "simple-bus";
71
72                 reg_2p5v: 2p5v {
73                         compatible = "regulator-fixed";
74                         regulator-name = "2P5V";
75                         regulator-min-microvolt = <2500000>;
76                         regulator-max-microvolt = <2500000>;
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_otg_vbus: usb_otg_vbus {
89                         compatible = "regulator-fixed";
90                         regulator-name = "usb_otg_vbus";
91                         regulator-min-microvolt = <5000000>;
92                         regulator-max-microvolt = <5000000>;
93                         gpio = <&gpio3 22 0>;
94                         enable-active-high;
95                 };
96         };
97 };
98
99 &fec {
100         pinctrl-names = "default";
101         pinctrl-0 = <&pinctrl_enet_1>;
102         phy-mode = "rgmii";
103         phy-reset-gpios = <&gpio1 30 0>;
104         status = "okay";
105 };
106
107 &gpmi {
108         pinctrl-names = "default";
109         pinctrl-0 = <&pinctrl_gpmi_nand_2>;
110         status = "okay";
111 };
112
113 &i2c1 {
114         status = "okay";
115         clock-frequency = <100000>;
116         pinctrl-names = "default";
117         pinctrl-0 = <&pinctrl_i2c1_1>;
118
119         eeprom: eeprom@50 {
120                 compatible = "atmel,24c02";
121                 reg = <0x50>;
122                 pagesize = <16>;
123         };
124
125         eeprom1: eeprom@50 {
126                 compatible = "atmel,24c02";
127                 reg = <0x50>;
128                 pagesize = <16>;
129         };
130
131         eeprom2: eeprom@51 {
132                 compatible = "atmel,24c02";
133                 reg = <0x51>;
134                 pagesize = <16>;
135         };
136
137         eeprom3: eeprom@52 {
138                 compatible = "atmel,24c02";
139                 reg = <0x52>;
140                 pagesize = <16>;
141         };
142
143         eeprom4: eeprom@53 {
144                 compatible = "atmel,24c02";
145                 reg = <0x53>;
146                 pagesize = <16>;
147         };
148
149         rtc: ds1672@68 {
150                 compatible = "dallas,ds1672";
151                 reg = <0x68>;
152         };
153
154         gpio: pca9555@23 {
155                 compatible = "nxp,pca9555";
156                 reg = <0x23>;
157                 gpio-controller;
158                 #gpio-cells = <2>;
159         };
160
161         hwmon: gsc@29 {
162                 compatible = "gw,gsp";
163                 reg = <0x29>;
164         };
165 };
166
167 &i2c2 {
168         status = "okay";
169         clock-frequency = <100000>;
170         pinctrl-names = "default";
171         pinctrl-0 = <&pinctrl_i2c2_2>;
172 };
173
174 &i2c3 {
175         status = "okay";
176         clock-frequency = <100000>;
177         pinctrl-names = "default";
178         pinctrl-0 = <&pinctrl_i2c3_2>;
179
180         videoin: adv7180@20 {
181                 compatible = "adi,adv7180";
182                 reg = <0x20>;
183         };
184 };
185
186 &iomuxc {
187         pinctrl-names = "default";
188         pinctrl-0 = <&pinctrl_hog>;
189
190         hog {
191                 pinctrl_hog: hoggrp {
192                         fsl,pins = <
193                                 MX6DL_PAD_KEY_COL0__GPIO4_IO06  0x80000000 /* user1 led */
194                                 MX6DL_PAD_KEY_ROW0__GPIO4_IO07  0x80000000 /* user2 led */
195                                 MX6DL_PAD_ENET_TXD0__GPIO1_IO30 0x80000000 /* PHY Reset */
196                                 MX6DL_PAD_EIM_D22__GPIO3_IO22   0x80000000 /* OTG_PWR_EN */
197                                 MX6DL_PAD_GPIO_0__GPIO1_IO00    0x80000000 /* PCIE_RST# */
198                                 MX6DL_PAD_EIM_A19__GPIO2_IO19   0x80000000 /* MEZZ_DIO0 */
199                                 MX6DL_PAD_EIM_A20__GPIO2_IO18   0x80000000 /* MEZZ_DIO1 */
200                          >;
201                 };
202         };
203 };
204
205 &pcie {
206         reset-gpio = <&gpio1 0 0>;
207         status = "okay";
208 };
209
210 &uart1 {
211         pinctrl-names = "default";
212         pinctrl-0 = <&pinctrl_uart1_2>;
213         status = "okay";
214 };
215
216 &uart2 {
217         pinctrl-names = "default";
218         pinctrl-0 = <&pinctrl_uart2_1>;
219         status = "okay";
220 };
221
222 &uart3 {
223         pinctrl-names = "default";
224         pinctrl-0 = <&pinctrl_uart3_1>;
225         status = "okay";
226 };
227
228 &uart5 {
229         pinctrl-names = "default";
230         pinctrl-0 = <&pinctrl_uart5_1>;
231         status = "okay";
232 };
233
234 &usbh1 {
235         status = "okay";
236 };