Merge branch 'for-3.7/core' of git://git.kernel.dk/linux-block
[firefly-linux-kernel-4.4.55.git] / arch / arm / boot / dts / ea3250.dts
1 /*
2  * Embedded Artists LPC3250 board
3  *
4  * Copyright 2012 Roland Stigge <stigge@antcom.de>
5  *
6  * The code contained herein is licensed under the GNU General Public
7  * License. You may obtain a copy of the GNU General Public License
8  * Version 2 or later at the following locations:
9  *
10  * http://www.opensource.org/licenses/gpl-license.html
11  * http://www.gnu.org/copyleft/gpl.html
12  */
13
14 /dts-v1/;
15 /include/ "lpc32xx.dtsi"
16
17 / {
18         model = "Embedded Artists LPC3250 board based on NXP LPC3250";
19         compatible = "ea,ea3250", "nxp,lpc3250";
20         #address-cells = <1>;
21         #size-cells = <1>;
22
23         memory {
24                 device_type = "memory";
25                 reg = <0 0x4000000>;
26         };
27
28         ahb {
29                 mac: ethernet@31060000 {
30                         phy-mode = "rmii";
31                         use-iram;
32                 };
33
34                 /* Here, choose exactly one from: ohci, usbd */
35                 ohci@31020000 {
36                         transceiver = <&isp1301>;
37                         status = "okay";
38                 };
39
40 /*
41                 usbd@31020000 {
42                         transceiver = <&isp1301>;
43                         status = "okay";
44                 };
45 */
46
47                 /* 128MB Flash via SLC NAND controller */
48                 slc: flash@20020000 {
49                         status = "okay";
50                         #address-cells = <1>;
51                         #size-cells = <1>;
52
53                         nxp,wdr-clks = <14>;
54                         nxp,wwidth = <260000000>;
55                         nxp,whold = <104000000>;
56                         nxp,wsetup = <200000000>;
57                         nxp,rdr-clks = <14>;
58                         nxp,rwidth = <34666666>;
59                         nxp,rhold = <104000000>;
60                         nxp,rsetup = <200000000>;
61                         nand-on-flash-bbt;
62                         gpios = <&gpio 5 19 1>; /* GPO_P3 19, active low */
63
64                         mtd0@00000000 {
65                                 label = "ea3250-boot";
66                                 reg = <0x00000000 0x00080000>;
67                                 read-only;
68                         };
69
70                         mtd1@00080000 {
71                                 label = "ea3250-uboot";
72                                 reg = <0x00080000 0x000c0000>;
73                                 read-only;
74                         };
75
76                         mtd2@00140000 {
77                                 label = "ea3250-kernel";
78                                 reg = <0x00140000 0x00400000>;
79                         };
80
81                         mtd3@00540000 {
82                                 label = "ea3250-rootfs";
83                                 reg = <0x00540000 0x07ac0000>;
84                         };
85                 };
86
87                 apb {
88                         uart5: serial@40090000 {
89                                 status = "okay";
90                         };
91
92                         uart3: serial@40080000 {
93                                 status = "okay";
94                         };
95
96                         uart6: serial@40098000 {
97                                 status = "okay";
98                         };
99
100                         i2c1: i2c@400A0000 {
101                                 clock-frequency = <100000>;
102
103                                 eeprom@50 {
104                                         compatible = "at,24c256";
105                                         reg = <0x50>;
106                                 };
107
108                                 eeprom@57 {
109                                         compatible = "at,24c64";
110                                         reg = <0x57>;
111                                 };
112
113                                 uda1380: uda1380@18 {
114                                         compatible = "nxp,uda1380";
115                                         reg = <0x18>;
116                                         power-gpio = <&gpio 0x59 0>;
117                                         reset-gpio = <&gpio 0x51 0>;
118                                         dac-clk = "wspll";
119                                 };
120
121                                 pca9532: pca9532@60 {
122                                         compatible = "nxp,pca9532";
123                                         gpio-controller;
124                                         #gpio-cells = <2>;
125                                         reg = <0x60>;
126                                 };
127                         };
128
129                         i2c2: i2c@400A8000 {
130                                 clock-frequency = <100000>;
131                         };
132
133                         i2cusb: i2c@31020300 {
134                                 clock-frequency = <100000>;
135
136                                 isp1301: usb-transceiver@2d {
137                                         compatible = "nxp,isp1301";
138                                         reg = <0x2d>;
139                                 };
140                         };
141
142                         sd@20098000 {
143                                 wp-gpios = <&pca9532 5 0>;
144                                 cd-gpios = <&pca9532 4 0>;
145                                 cd-inverted;
146                                 bus-width = <4>;
147                                 status = "okay";
148                         };
149                 };
150
151                 fab {
152                         uart1: serial@40014000 {
153                                 status = "okay";
154                         };
155
156                         /* 3-axis accelerometer X,Y,Z (or AD-IN instead of Z) */
157                         adc@40048000 {
158                                 status = "okay";
159                         };
160                 };
161         };
162
163         gpio_keys {
164                 compatible = "gpio-keys";
165                 #address-cells = <1>;
166                 #size-cells = <0>;
167                 autorepeat;
168                 button@21 {
169                         label = "Interrupt Key";
170                         linux,code = <103>;
171                         gpios = <&gpio 4 1 0>; /* GPI_P3 1 */
172                 };
173                 key1 {
174                         label = "KEY1";
175                         linux,code = <1>;
176                         gpios = <&pca9532 0 0>;
177                 };
178                 key2 {
179                         label = "KEY2";
180                         linux,code = <2>;
181                         gpios = <&pca9532 1 0>;
182                 };
183                 key3 {
184                         label = "KEY3";
185                         linux,code = <3>;
186                         gpios = <&pca9532 2 0>;
187                 };
188                 key4 {
189                         label = "KEY4";
190                         linux,code = <4>;
191                         gpios = <&pca9532 3 0>;
192                 };
193                 joy0 {
194                         label = "Joystick Key 0";
195                         linux,code = <10>;
196                         gpios = <&gpio 2 0 0>; /* P2.0 */
197                 };
198                 joy1 {
199                         label = "Joystick Key 1";
200                         linux,code = <11>;
201                         gpios = <&gpio 2 1 0>; /* P2.1 */
202                 };
203                 joy2 {
204                         label = "Joystick Key 2";
205                         linux,code = <12>;
206                         gpios = <&gpio 2 2 0>; /* P2.2 */
207                 };
208                 joy3 {
209                         label = "Joystick Key 3";
210                         linux,code = <13>;
211                         gpios = <&gpio 2 3 0>; /* P2.3 */
212                 };
213                 joy4 {
214                         label = "Joystick Key 4";
215                         linux,code = <14>;
216                         gpios = <&gpio 2 4 0>; /* P2.4 */
217                 };
218         };
219
220         leds {
221                 compatible = "gpio-leds";
222
223                 /* LEDs on OEM Board */
224
225                 led1 {
226                         gpios = <&gpio 5 14 1>; /* GPO_P3 14, GPIO 93, active low */
227                         linux,default-trigger = "timer";
228                         default-state = "off";
229                 };
230
231                 led2 {
232                         gpios = <&gpio 2 10 1>; /* P2.10, active low */
233                         default-state = "off";
234                 };
235
236                 led3 {
237                         gpios = <&gpio 2 11 1>; /* P2.11, active low */
238                         default-state = "off";
239                 };
240
241                 led4 {
242                         gpios = <&gpio 2 12 1>; /* P2.12, active low */
243                         default-state = "off";
244                 };
245
246                 /* LEDs on Base Board */
247
248                 lede1 {
249                         gpios = <&pca9532 8 0>;
250                         default-state = "off";
251                 };
252                 lede2 {
253                         gpios = <&pca9532 9 0>;
254                         default-state = "off";
255                 };
256                 lede3 {
257                         gpios = <&pca9532 10 0>;
258                         default-state = "off";
259                 };
260                 lede4 {
261                         gpios = <&pca9532 11 0>;
262                         default-state = "off";
263                 };
264                 lede5 {
265                         gpios = <&pca9532 12 0>;
266                         default-state = "off";
267                 };
268                 lede6 {
269                         gpios = <&pca9532 13 0>;
270                         default-state = "off";
271                 };
272                 lede7 {
273                         gpios = <&pca9532 14 0>;
274                         default-state = "off";
275                 };
276                 lede8 {
277                         gpios = <&pca9532 15 0>;
278                         default-state = "off";
279                 };
280         };
281 };