ARM: dts: enable audio support for imx28-evk
[linux-2.6/linux-acpi-2.6/ibm-acpi-2.6.git] / arch / arm / boot / dts / imx28.dtsi
blob4634cb861a597d115b5f6dab784da3a616c81b01
1 /*
2  * Copyright 2012 Freescale Semiconductor, Inc.
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  */
12 /include/ "skeleton.dtsi"
14 / {
15         interrupt-parent = <&icoll>;
17         aliases {
18                 gpio0 = &gpio0;
19                 gpio1 = &gpio1;
20                 gpio2 = &gpio2;
21                 gpio3 = &gpio3;
22                 gpio4 = &gpio4;
23                 saif0 = &saif0;
24                 saif1 = &saif1;
25         };
27         cpus {
28                 cpu@0 {
29                         compatible = "arm,arm926ejs";
30                 };
31         };
33         apb@80000000 {
34                 compatible = "simple-bus";
35                 #address-cells = <1>;
36                 #size-cells = <1>;
37                 reg = <0x80000000 0x80000>;
38                 ranges;
40                 apbh@80000000 {
41                         compatible = "simple-bus";
42                         #address-cells = <1>;
43                         #size-cells = <1>;
44                         reg = <0x80000000 0x3c900>;
45                         ranges;
47                         icoll: interrupt-controller@80000000 {
48                                 compatible = "fsl,imx28-icoll", "fsl,mxs-icoll";
49                                 interrupt-controller;
50                                 #interrupt-cells = <1>;
51                                 reg = <0x80000000 0x2000>;
52                         };
54                         hsadc@80002000 {
55                                 reg = <0x80002000 2000>;
56                                 interrupts = <13 87>;
57                                 status = "disabled";
58                         };
60                         dma-apbh@80004000 {
61                                 compatible = "fsl,imx28-dma-apbh";
62                                 reg = <0x80004000 2000>;
63                         };
65                         perfmon@80006000 {
66                                 reg = <0x80006000 800>;
67                                 interrupts = <27>;
68                                 status = "disabled";
69                         };
71                         bch@8000a000 {
72                                 reg = <0x8000a000 2000>;
73                                 interrupts = <41>;
74                                 status = "disabled";
75                         };
77                         gpmi@8000c000 {
78                                 reg = <0x8000c000 2000>;
79                                 interrupts = <42 88>;
80                                 status = "disabled";
81                         };
83                         ssp0: ssp@80010000 {
84                                 reg = <0x80010000 2000>;
85                                 interrupts = <96 82>;
86                                 fsl,ssp-dma-channel = <0>;
87                                 status = "disabled";
88                         };
90                         ssp1: ssp@80012000 {
91                                 reg = <0x80012000 2000>;
92                                 interrupts = <97 83>;
93                                 fsl,ssp-dma-channel = <1>;
94                                 status = "disabled";
95                         };
97                         ssp2: ssp@80014000 {
98                                 reg = <0x80014000 2000>;
99                                 interrupts = <98 84>;
100                                 fsl,ssp-dma-channel = <2>;
101                                 status = "disabled";
102                         };
104                         ssp3: ssp@80016000 {
105                                 reg = <0x80016000 2000>;
106                                 interrupts = <99 85>;
107                                 fsl,ssp-dma-channel = <3>;
108                                 status = "disabled";
109                         };
111                         pinctrl@80018000 {
112                                 #address-cells = <1>;
113                                 #size-cells = <0>;
114                                 compatible = "fsl,imx28-pinctrl", "simple-bus";
115                                 reg = <0x80018000 2000>;
117                                 gpio0: gpio@0 {
118                                         compatible = "fsl,imx28-gpio", "fsl,mxs-gpio";
119                                         interrupts = <127>;
120                                         gpio-controller;
121                                         #gpio-cells = <2>;
122                                         interrupt-controller;
123                                         #interrupt-cells = <2>;
124                                 };
126                                 gpio1: gpio@1 {
127                                         compatible = "fsl,imx28-gpio", "fsl,mxs-gpio";
128                                         interrupts = <126>;
129                                         gpio-controller;
130                                         #gpio-cells = <2>;
131                                         interrupt-controller;
132                                         #interrupt-cells = <2>;
133                                 };
135                                 gpio2: gpio@2 {
136                                         compatible = "fsl,imx28-gpio", "fsl,mxs-gpio";
137                                         interrupts = <125>;
138                                         gpio-controller;
139                                         #gpio-cells = <2>;
140                                         interrupt-controller;
141                                         #interrupt-cells = <2>;
142                                 };
144                                 gpio3: gpio@3 {
145                                         compatible = "fsl,imx28-gpio", "fsl,mxs-gpio";
146                                         interrupts = <124>;
147                                         gpio-controller;
148                                         #gpio-cells = <2>;
149                                         interrupt-controller;
150                                         #interrupt-cells = <2>;
151                                 };
153                                 gpio4: gpio@4 {
154                                         compatible = "fsl,imx28-gpio", "fsl,mxs-gpio";
155                                         interrupts = <123>;
156                                         gpio-controller;
157                                         #gpio-cells = <2>;
158                                         interrupt-controller;
159                                         #interrupt-cells = <2>;
160                                 };
162                                 duart_pins_a: duart@0 {
163                                         reg = <0>;
164                                         fsl,pinmux-ids = <0x3102 0x3112>;
165                                         fsl,drive-strength = <0>;
166                                         fsl,voltage = <1>;
167                                         fsl,pull-up = <0>;
168                                 };
170                                 mac0_pins_a: mac0@0 {
171                                         reg = <0>;
172                                         fsl,pinmux-ids = <0x4000 0x4010 0x4020
173                                                 0x4030 0x4040 0x4060 0x4070
174                                                 0x4080 0x4100>;
175                                         fsl,drive-strength = <1>;
176                                         fsl,voltage = <1>;
177                                         fsl,pull-up = <1>;
178                                 };
180                                 mac1_pins_a: mac1@0 {
181                                         reg = <0>;
182                                         fsl,pinmux-ids = <0x40f1 0x4091 0x40a1
183                                                 0x40e1 0x40b1 0x40c1>;
184                                         fsl,drive-strength = <1>;
185                                         fsl,voltage = <1>;
186                                         fsl,pull-up = <1>;
187                                 };
189                                 mmc0_8bit_pins_a: mmc0-8bit@0 {
190                                         reg = <0>;
191                                         fsl,pinmux-ids = <0x2000 0x2010 0x2020
192                                                 0x2030 0x2040 0x2050 0x2060
193                                                 0x2070 0x2080 0x2090 0x20a0>;
194                                         fsl,drive-strength = <1>;
195                                         fsl,voltage = <1>;
196                                         fsl,pull-up = <1>;
197                                 };
199                                 mmc0_cd_cfg: mmc0-cd-cfg {
200                                         fsl,pinmux-ids = <0x2090>;
201                                         fsl,pull-up = <0>;
202                                 };
204                                 mmc0_sck_cfg: mmc0-sck-cfg {
205                                         fsl,pinmux-ids = <0x20a0>;
206                                         fsl,drive-strength = <2>;
207                                         fsl,pull-up = <0>;
208                                 };
210                                 i2c0_pins_a: i2c0@0 {
211                                         reg = <0>;
212                                         fsl,pinmux-ids = <0x3180 0x3190>;
213                                         fsl,drive-strength = <1>;
214                                         fsl,voltage = <1>;
215                                         fsl,pull-up = <1>;
216                                 };
218                                 saif0_pins_a: saif0@0 {
219                                         reg = <0>;
220                                         fsl,pinmux-ids =
221                                                 <0x3140 0x3150 0x3160 0x3170>;
222                                         fsl,drive-strength = <2>;
223                                         fsl,voltage = <1>;
224                                         fsl,pull-up = <1>;
225                                 };
227                                 saif1_pins_a: saif1@0 {
228                                         reg = <0>;
229                                         fsl,pinmux-ids = <0x31a0>;
230                                         fsl,drive-strength = <2>;
231                                         fsl,voltage = <1>;
232                                         fsl,pull-up = <1>;
233                                 };
234                         };
236                         digctl@8001c000 {
237                                 reg = <0x8001c000 2000>;
238                                 interrupts = <89>;
239                                 status = "disabled";
240                         };
242                         etm@80022000 {
243                                 reg = <0x80022000 2000>;
244                                 status = "disabled";
245                         };
247                         dma-apbx@80024000 {
248                                 compatible = "fsl,imx28-dma-apbx";
249                                 reg = <0x80024000 2000>;
250                         };
252                         dcp@80028000 {
253                                 reg = <0x80028000 2000>;
254                                 interrupts = <52 53 54>;
255                                 status = "disabled";
256                         };
258                         pxp@8002a000 {
259                                 reg = <0x8002a000 2000>;
260                                 interrupts = <39>;
261                                 status = "disabled";
262                         };
264                         ocotp@8002c000 {
265                                 reg = <0x8002c000 2000>;
266                                 status = "disabled";
267                         };
269                         axi-ahb@8002e000 {
270                                 reg = <0x8002e000 2000>;
271                                 status = "disabled";
272                         };
274                         lcdif@80030000 {
275                                 reg = <0x80030000 2000>;
276                                 interrupts = <38 86>;
277                                 status = "disabled";
278                         };
280                         can0: can@80032000 {
281                                 reg = <0x80032000 2000>;
282                                 interrupts = <8>;
283                                 status = "disabled";
284                         };
286                         can1: can@80034000 {
287                                 reg = <0x80034000 2000>;
288                                 interrupts = <9>;
289                                 status = "disabled";
290                         };
292                         simdbg@8003c000 {
293                                 reg = <0x8003c000 200>;
294                                 status = "disabled";
295                         };
297                         simgpmisel@8003c200 {
298                                 reg = <0x8003c200 100>;
299                                 status = "disabled";
300                         };
302                         simsspsel@8003c300 {
303                                 reg = <0x8003c300 100>;
304                                 status = "disabled";
305                         };
307                         simmemsel@8003c400 {
308                                 reg = <0x8003c400 100>;
309                                 status = "disabled";
310                         };
312                         gpiomon@8003c500 {
313                                 reg = <0x8003c500 100>;
314                                 status = "disabled";
315                         };
317                         simenet@8003c700 {
318                                 reg = <0x8003c700 100>;
319                                 status = "disabled";
320                         };
322                         armjtag@8003c800 {
323                                 reg = <0x8003c800 100>;
324                                 status = "disabled";
325                         };
326                 };
328                 apbx@80040000 {
329                         compatible = "simple-bus";
330                         #address-cells = <1>;
331                         #size-cells = <1>;
332                         reg = <0x80040000 0x40000>;
333                         ranges;
335                         clkctl@80040000 {
336                                 reg = <0x80040000 2000>;
337                                 status = "disabled";
338                         };
340                         saif0: saif@80042000 {
341                                 compatible = "fsl,imx28-saif";
342                                 reg = <0x80042000 2000>;
343                                 interrupts = <59 80>;
344                                 fsl,saif-dma-channel = <4>;
345                                 status = "disabled";
346                         };
348                         power@80044000 {
349                                 reg = <0x80044000 2000>;
350                                 status = "disabled";
351                         };
353                         saif1: saif@80046000 {
354                                 compatible = "fsl,imx28-saif";
355                                 reg = <0x80046000 2000>;
356                                 interrupts = <58 81>;
357                                 fsl,saif-dma-channel = <5>;
358                                 status = "disabled";
359                         };
361                         lradc@80050000 {
362                                 reg = <0x80050000 2000>;
363                                 status = "disabled";
364                         };
366                         spdif@80054000 {
367                                 reg = <0x80054000 2000>;
368                                 interrupts = <45 66>;
369                                 status = "disabled";
370                         };
372                         rtc@80056000 {
373                                 reg = <0x80056000 2000>;
374                                 interrupts = <28 29>;
375                                 status = "disabled";
376                         };
378                         i2c0: i2c@80058000 {
379                                 #address-cells = <1>;
380                                 #size-cells = <0>;
381                                 compatible = "fsl,imx28-i2c";
382                                 reg = <0x80058000 2000>;
383                                 interrupts = <111 68>;
384                                 status = "disabled";
385                         };
387                         i2c1: i2c@8005a000 {
388                                 #address-cells = <1>;
389                                 #size-cells = <0>;
390                                 compatible = "fsl,imx28-i2c";
391                                 reg = <0x8005a000 2000>;
392                                 interrupts = <110 69>;
393                                 status = "disabled";
394                         };
396                         pwm@80064000 {
397                                 reg = <0x80064000 2000>;
398                                 status = "disabled";
399                         };
401                         timrot@80068000 {
402                                 reg = <0x80068000 2000>;
403                                 status = "disabled";
404                         };
406                         auart0: serial@8006a000 {
407                                 reg = <0x8006a000 0x2000>;
408                                 interrupts = <112 70 71>;
409                                 status = "disabled";
410                         };
412                         auart1: serial@8006c000 {
413                                 reg = <0x8006c000 0x2000>;
414                                 interrupts = <113 72 73>;
415                                 status = "disabled";
416                         };
418                         auart2: serial@8006e000 {
419                                 reg = <0x8006e000 0x2000>;
420                                 interrupts = <114 74 75>;
421                                 status = "disabled";
422                         };
424                         auart3: serial@80070000 {
425                                 reg = <0x80070000 0x2000>;
426                                 interrupts = <115 76 77>;
427                                 status = "disabled";
428                         };
430                         auart4: serial@80072000 {
431                                 reg = <0x80072000 0x2000>;
432                                 interrupts = <116 78 79>;
433                                 status = "disabled";
434                         };
436                         duart: serial@80074000 {
437                                 compatible = "arm,pl011", "arm,primecell";
438                                 reg = <0x80074000 0x1000>;
439                                 interrupts = <47>;
440                                 status = "disabled";
441                         };
443                         usbphy0: usbphy@8007c000 {
444                                 reg = <0x8007c000 0x2000>;
445                                 status = "disabled";
446                         };
448                         usbphy1: usbphy@8007e000 {
449                                 reg = <0x8007e000 0x2000>;
450                                 status = "disabled";
451                         };
452                 };
453         };
455         ahb@80080000 {
456                 compatible = "simple-bus";
457                 #address-cells = <1>;
458                 #size-cells = <1>;
459                 reg = <0x80080000 0x80000>;
460                 ranges;
462                 usbctrl0: usbctrl@80080000 {
463                         reg = <0x80080000 0x10000>;
464                         status = "disabled";
465                 };
467                 usbctrl1: usbctrl@80090000 {
468                         reg = <0x80090000 0x10000>;
469                         status = "disabled";
470                 };
472                 dflpt@800c0000 {
473                         reg = <0x800c0000 0x10000>;
474                         status = "disabled";
475                 };
477                 mac0: ethernet@800f0000 {
478                         compatible = "fsl,imx28-fec";
479                         reg = <0x800f0000 0x4000>;
480                         interrupts = <101>;
481                         status = "disabled";
482                 };
484                 mac1: ethernet@800f4000 {
485                         compatible = "fsl,imx28-fec";
486                         reg = <0x800f4000 0x4000>;
487                         interrupts = <102>;
488                         status = "disabled";
489                 };
491                 switch@800f8000 {
492                         reg = <0x800f8000 0x8000>;
493                         status = "disabled";
494                 };
496         };