]> git.kernelconcepts.de Git - karo-tx-linux.git/blob - arch/powerpc/boot/dts/ac14xx.dts
staging: r8821ae: Enable build by reverting BROKEN marking
[karo-tx-linux.git] / arch / powerpc / boot / dts / ac14xx.dts
1 /*
2  * Device Tree Source for the MPC5121e based ac14xx board
3  *
4  * Copyright 2012 Anatolij Gustschin <agust@denx.de>
5  *
6  * This program is free software; you can redistribute  it and/or modify it
7  * under  the terms of  the GNU General  Public License as published by the
8  * Free Software Foundation;  either version 2 of the  License, or (at your
9  * option) any later version.
10  */
11
12
13 #include <mpc5121.dtsi>
14
15 / {
16         model = "ac14xx";
17         compatible = "ifm,ac14xx", "fsl,mpc5121";
18         #address-cells = <1>;
19         #size-cells = <1>;
20
21         aliases {
22                 serial0 = &serial0;
23                 serial1 = &serial7;
24                 spi4 = &spi4;
25                 spi5 = &spi5;
26         };
27
28         cpus {
29                 PowerPC,5121@0 {
30                         timebase-frequency = <40000000>;        /*  40 MHz (csb/4) */
31                         bus-frequency = <160000000>;            /* 160 MHz csb bus */
32                         clock-frequency = <400000000>;          /* 400 MHz ppc core */
33                 };
34         };
35
36         memory {
37                 reg = <0x00000000 0x10000000>;                  /* 256MB at 0 */
38         };
39
40         nfc@40000000 {
41                 status = "disabled";
42         };
43
44         localbus@80000020 {
45                 ranges = <0x0 0x0 0xfc000000 0x04000000 /* CS0: NOR flash */
46                           0x1 0x0 0xe0000000 0x00010000 /* CS1: FRAM */
47                           0x2 0x0 0xe0100000 0x00080000 /* CS2: asi1 */
48                           0x3 0x0 0xe0300000 0x00020000 /* CS3: comm */
49                           0x5 0x0 0xe0400000 0x00010000 /* CS5: safety */
50                           0x6 0x0 0xe0200000 0x00080000>; /* CS6: asi2 */
51
52                 flash@0,0 {
53                         compatible = "cfi-flash";
54                         reg = <0 0x00000000 0x04000000>;
55                         #address-cells = <1>;
56                         #size-cells = <1>;
57                         bank-width = <2>;
58                         device-width = <2>;
59
60                         partition@0 {
61                                 label = "dtb-kernel-production";
62                                 reg = <0x00000000 0x00400000>;
63                         };
64                         partition@1 {
65                                 label = "filesystem-production";
66                                 reg = <0x00400000 0x03400000>;
67                         };
68
69                         partition@2 {
70                                 label = "recovery";
71                                 reg = <0x03800000 0x00700000>;
72                         };
73
74                         partition@3 {
75                                 label = "uboot-code";
76                                 reg = <0x03f00000 0x00040000>;
77                         };
78                         partition@4 {
79                                 label = "uboot-env1";
80                                 reg = <0x03f40000 0x00020000>;
81                         };
82                         partition@5 {
83                                 label = "uboot-env2";
84                                 reg = <0x03f60000 0x00020000>;
85                         };
86                 };
87
88                 fram@1,0 {
89                         compatible = "ifm,ac14xx-fram", "linux,uio-pdrv-genirq";
90                         reg = <1 0x00000000 0x00010000>;
91                 };
92
93                 asi@2,0 {
94                         /* masters mapping: CS, CS offset, size */
95                         reg = <2 0x00000000 0x00080000
96                                6 0x00000000 0x00080000>;
97                         #address-cells = <1>;
98                         #size-cells = <1>;
99                         compatible = "ifm,ac14xx-asi-fpga";
100                         gpios = <
101                                 &gpio_pic 26 0  /* prog */
102                                 &gpio_pic 27 0  /* done */
103                                 &gpio_pic 10 0  /* reset */
104                                 >;
105
106                         master@1 {
107                                 interrupts = <20 0x2>;
108                                 interrupt-parent = <&gpio_pic>;
109                                 chipselect = <2 0x00009000 0x00009100>;
110                                 label = "AS-i master 1";
111                         };
112
113                         master@2 {
114                                 interrupts = <21 0x2>;
115                                 interrupt-parent = <&gpio_pic>;
116                                 chipselect = <6 0x00009000 0x00009100>;
117                                 label = "AS-i master 2";
118                         };
119                 };
120
121                 netx@3,0 {
122                         compatible = "ifm,netx";
123                         reg = <0x3 0x00000000 0x00020000>;
124                         chipselect = <3 0x00101140 0x00203100>;
125                         interrupts = <17 0x8>;
126                         gpios = <&gpio_pic 15 0>;
127                 };
128
129                 safety@5,0 {
130                         compatible = "ifm,safety";
131                         reg = <0x5 0x00000000 0x00010000>;
132                         chipselect = <5 0x00009000 0x00009100>;
133                         interrupts = <22 0x2>;
134                         interrupt-parent = <&gpio_pic>;
135                         gpios = <
136                                 &gpio_pic 12 0  /* prog */
137                                 &gpio_pic 11 0  /* done */
138                                 >;
139                 };
140         };
141
142         soc@80000000 {
143
144                 clock@f00 {
145                         compatible = "fsl,mpc5121rev2-clock", "fsl,mpc5121-clock";
146                 };
147
148                 /*
149                  * GPIO PIC:
150                  * interrupts cell = <pin nr, sense>
151                  * sense == 8: Level, low assertion
152                  * sense == 2: Edge, high-to-low change
153                  */
154                 gpio_pic: gpio@1100 {
155                         gpio-controller;
156                         #gpio-cells = <2>;
157                         interrupt-controller;
158                         #interrupt-cells = <2>;
159                 };
160
161                 sdhc@1500 {
162                         cd-gpios = <&gpio_pic 23 0>;    /* card detect */
163                         wp-gpios = <&gpio_pic 24 0>;    /* write protect */
164                         wp-inverted;                    /* WP active high */
165                 };
166
167                 i2c@1700 {
168                         /* use Fast-mode */
169                         clock-frequency = <400000>;
170
171                         at24@30 {
172                                 compatible = "at24,24c01";
173                                 reg = <0x30>;
174                         };
175
176                         at24@31 {
177                                 compatible = "at24,24c01";
178                                 reg = <0x31>;
179                         };
180
181                         temp@48 {
182                                 compatible = "ad,ad7414";
183                                 reg = <0x48>;
184                         };
185
186                         at24@50 {
187                                 compatible = "at24,24c01";
188                                 reg = <0x50>;
189                         };
190
191                         at24@51 {
192                                 compatible = "at24,24c01";
193                                 reg = <0x51>;
194                         };
195
196                         at24@52 {
197                                 compatible = "at24,24c01";
198                                 reg = <0x52>;
199                         };
200
201                         at24@53 {
202                                 compatible = "at24,24c01";
203                                 reg = <0x53>;
204                         };
205
206                         at24@54 {
207                                 compatible = "at24,24c01";
208                                 reg = <0x54>;
209                         };
210
211                         at24@55 {
212                                 compatible = "at24,24c01";
213                                 reg = <0x55>;
214                         };
215
216                         at24@56 {
217                                 compatible = "at24,24c01";
218                                 reg = <0x56>;
219                         };
220
221                         at24@57 {
222                                 compatible = "at24,24c01";
223                                 reg = <0x57>;
224                         };
225
226                         rtc@68 {
227                                 compatible = "stm,m41t00";
228                                 reg = <0x68>;
229                         };
230                 };
231
232                 axe_pic: axe-base@2000 {
233                         compatible = "fsl,mpc5121-axe-base";
234                         reg = <0x2000 0x100>;
235                         interrupts = <42 0x8>;
236                         interrupt-controller;
237                         #interrupt-cells = <2>;
238                 };
239
240                 axe-app {
241                         compatible = "fsl,mpc5121-axe-app";
242                         interrupt-parent = <&axe_pic>;
243                         interrupts = <
244                                         /* soft interrupts */
245                                         0 0x0   1 0x0   2 0x0   3 0x0
246                                         4 0x0   5 0x0   6 0x0   7 0x0
247                                         /* fifo interrupts */
248                                         8 0x0   9 0x0   10 0x0  11 0x0
249                                 >;
250                 };
251
252                 display@2100 {
253                         edid = [00 FF FF FF FF FF FF 00 14 94 00 00 00 00 00 00
254                                 0A 12 01 03 80 1C 23 78 CA 88 FF 94 52 54 8E 27
255                                 1E 4C 50 00 00 00 01 01 01 01 01 01 01 01 01 01
256                                 01 01 01 01 01 01 FB 00 B0 14 00 DC 05 00 08 04
257                                 21 00 1C 23 00 00 00 18 00 00 00 FD 00 38 3C 1F
258                                 3C 01 0A 20 20 20 20 20 20 20 00 00 00 FC 00 45
259                                 54 30 31 38 30 30 33 44 4D 55 0A 0A 00 00 00 10
260                                 00 41 30 30 30 30 30 30 30 30 30 30 30 31 00 D5];
261                 };
262
263                 can@2300 {
264                         status = "disabled";
265                 };
266
267                 can@2380 {
268                         status = "disabled";
269                 };
270
271                 viu@2400 {
272                         status = "disabled";
273                 };
274
275                 mdio@2800 {
276                         phy0: ethernet-phy@1f {
277                                 compatible = "smsc,lan8700";
278                                 reg = <0x1f>;
279                         };
280                 };
281
282                 enet: ethernet@2800 {
283                         phy-handle = <&phy0>;
284                 };
285
286                 usb@3000 {
287                         status = "disabled";
288                 };
289
290                 usb@4000 {
291                         status = "disabled";
292                 };
293
294                 /* PSC3 serial port A, aka ttyPSC0 */
295                 serial0: psc@11300 {
296                         compatible = "fsl,mpc5121-psc-uart", "fsl,mpc5121-psc";
297                         fsl,rx-fifo-size = <512>;
298                         fsl,tx-fifo-size = <512>;
299                 };
300
301                 /* PSC4 in SPI mode */
302                 spi4: psc@11400 {
303                         compatible = "fsl,mpc5121-psc-spi", "fsl,mpc5121-psc";
304                         fsl,rx-fifo-size = <768>;
305                         fsl,tx-fifo-size = <768>;
306                         #address-cells = <1>;
307                         #size-cells = <0>;
308                         num-cs = <1>;
309                         cs-gpios = <&gpio_pic 25 0>;
310
311                         flash: m25p128@0 {
312                                 compatible = "st,m25p128";
313                                 spi-max-frequency = <20000000>;
314                                 reg = <0>;
315                                 #address-cells = <1>;
316                                 #size-cells = <1>;
317
318                                 partition@0 {
319                                         label = "spi-flash0";
320                                         reg = <0x00000000 0x01000000>;
321                                 };
322                         };
323                 };
324
325                 /* PSC5 in SPI mode */
326                 spi5: psc@11500 {
327                         compatible = "fsl,mpc5121-psc-spi", "fsl,mpc5121-psc";
328                         fsl,mode = "spi-master";
329                         fsl,rx-fifo-size = <128>;
330                         fsl,tx-fifo-size = <128>;
331                         #address-cells = <1>;
332                         #size-cells = <0>;
333
334                         lcd@0 {
335                                 compatible = "ilitek,ili922x";
336                                 reg = <0>;
337                                 spi-max-frequency = <100000>;
338                                 spi-cpol;
339                                 spi-cpha;
340                         };
341                 };
342
343                 /* PSC7 serial port C, aka ttyPSC2 */
344                 serial7: psc@11700 {
345                         compatible = "fsl,mpc5121-psc-uart", "fsl,mpc5121-psc";
346                         fsl,rx-fifo-size = <512>;
347                         fsl,tx-fifo-size = <512>;
348                 };
349
350                 matrix_keypad@0 {
351                         compatible = "gpio-matrix-keypad";
352                         debounce-delay-ms = <5>;
353                         col-scan-delay-us = <1>;
354                         gpio-activelow;
355                         col-gpios-binary;
356                         col-switch-delay-ms = <200>;
357
358                         col-gpios = <&gpio_pic 1 0>;    /* pin1 */
359
360                         row-gpios = <&gpio_pic 2 0      /* pin2 */
361                                      &gpio_pic 3 0      /* pin3 */
362                                      &gpio_pic 4 0>;    /* pin4 */
363
364                         linux,keymap = <0x0000006e      /* FN LEFT */
365                                         0x01000067      /* UP */
366                                         0x02000066      /* FN RIGHT */
367                                         0x00010069      /* LEFT */
368                                         0x0101006a      /* DOWN */
369                                         0x0201006c>;    /* RIGHT */
370                 };
371         };
372
373         leds {
374                 compatible = "gpio-leds";
375
376                 backlight {
377                         label = "backlight";
378                         gpios = <&gpio_pic 0 0>;
379                         default-state = "keep";
380                 };
381                 green {
382                         label = "green";
383                         gpios = <&gpio_pic 18 0>;
384                         default-state = "keep";
385                 };
386                 red {
387                         label = "red";
388                         gpios = <&gpio_pic 19 0>;
389                         default-state = "keep";
390                 };
391         };
392 };