Merge tag 'armsoc-late' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
[cascardo/linux.git] / arch / arm / boot / dts / imx28.dtsi
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  */
11
12 #include <dt-bindings/gpio/gpio.h>
13 #include "skeleton.dtsi"
14 #include "imx28-pinfunc.h"
15
16 / {
17         interrupt-parent = <&icoll>;
18
19         aliases {
20                 ethernet0 = &mac0;
21                 ethernet1 = &mac1;
22                 gpio0 = &gpio0;
23                 gpio1 = &gpio1;
24                 gpio2 = &gpio2;
25                 gpio3 = &gpio3;
26                 gpio4 = &gpio4;
27                 saif0 = &saif0;
28                 saif1 = &saif1;
29                 serial0 = &auart0;
30                 serial1 = &auart1;
31                 serial2 = &auart2;
32                 serial3 = &auart3;
33                 serial4 = &auart4;
34                 spi0 = &ssp1;
35                 spi1 = &ssp2;
36                 usbphy0 = &usbphy0;
37                 usbphy1 = &usbphy1;
38         };
39
40         cpus {
41                 #address-cells = <0>;
42                 #size-cells = <0>;
43
44                 cpu {
45                         compatible = "arm,arm926ej-s";
46                         device_type = "cpu";
47                 };
48         };
49
50         apb@80000000 {
51                 compatible = "simple-bus";
52                 #address-cells = <1>;
53                 #size-cells = <1>;
54                 reg = <0x80000000 0x80000>;
55                 ranges;
56
57                 apbh@80000000 {
58                         compatible = "simple-bus";
59                         #address-cells = <1>;
60                         #size-cells = <1>;
61                         reg = <0x80000000 0x3c900>;
62                         ranges;
63
64                         icoll: interrupt-controller@80000000 {
65                                 compatible = "fsl,imx28-icoll", "fsl,icoll";
66                                 interrupt-controller;
67                                 #interrupt-cells = <1>;
68                                 reg = <0x80000000 0x2000>;
69                         };
70
71                         hsadc: hsadc@80002000 {
72                                 reg = <0x80002000 0x2000>;
73                                 interrupts = <13>;
74                                 dmas = <&dma_apbh 12>;
75                                 dma-names = "rx";
76                                 status = "disabled";
77                         };
78
79                         dma_apbh: dma-apbh@80004000 {
80                                 compatible = "fsl,imx28-dma-apbh";
81                                 reg = <0x80004000 0x2000>;
82                                 interrupts = <82 83 84 85
83                                               88 88 88 88
84                                               88 88 88 88
85                                               87 86 0 0>;
86                                 interrupt-names = "ssp0", "ssp1", "ssp2", "ssp3",
87                                                   "gpmi0", "gmpi1", "gpmi2", "gmpi3",
88                                                   "gpmi4", "gmpi5", "gpmi6", "gmpi7",
89                                                   "hsadc", "lcdif", "empty", "empty";
90                                 #dma-cells = <1>;
91                                 dma-channels = <16>;
92                                 clocks = <&clks 25>;
93                         };
94
95                         perfmon: perfmon@80006000 {
96                                 reg = <0x80006000 0x800>;
97                                 interrupts = <27>;
98                                 status = "disabled";
99                         };
100
101                         gpmi: gpmi-nand@8000c000 {
102                                 compatible = "fsl,imx28-gpmi-nand";
103                                 #address-cells = <1>;
104                                 #size-cells = <1>;
105                                 reg = <0x8000c000 0x2000>, <0x8000a000 0x2000>;
106                                 reg-names = "gpmi-nand", "bch";
107                                 interrupts = <41>;
108                                 interrupt-names = "bch";
109                                 clocks = <&clks 50>;
110                                 clock-names = "gpmi_io";
111                                 dmas = <&dma_apbh 4>;
112                                 dma-names = "rx-tx";
113                                 status = "disabled";
114                         };
115
116                         ssp0: ssp@80010000 {
117                                 #address-cells = <1>;
118                                 #size-cells = <0>;
119                                 reg = <0x80010000 0x2000>;
120                                 interrupts = <96>;
121                                 clocks = <&clks 46>;
122                                 dmas = <&dma_apbh 0>;
123                                 dma-names = "rx-tx";
124                                 status = "disabled";
125                         };
126
127                         ssp1: ssp@80012000 {
128                                 #address-cells = <1>;
129                                 #size-cells = <0>;
130                                 reg = <0x80012000 0x2000>;
131                                 interrupts = <97>;
132                                 clocks = <&clks 47>;
133                                 dmas = <&dma_apbh 1>;
134                                 dma-names = "rx-tx";
135                                 status = "disabled";
136                         };
137
138                         ssp2: ssp@80014000 {
139                                 #address-cells = <1>;
140                                 #size-cells = <0>;
141                                 reg = <0x80014000 0x2000>;
142                                 interrupts = <98>;
143                                 clocks = <&clks 48>;
144                                 dmas = <&dma_apbh 2>;
145                                 dma-names = "rx-tx";
146                                 status = "disabled";
147                         };
148
149                         ssp3: ssp@80016000 {
150                                 #address-cells = <1>;
151                                 #size-cells = <0>;
152                                 reg = <0x80016000 0x2000>;
153                                 interrupts = <99>;
154                                 clocks = <&clks 49>;
155                                 dmas = <&dma_apbh 3>;
156                                 dma-names = "rx-tx";
157                                 status = "disabled";
158                         };
159
160                         pinctrl: pinctrl@80018000 {
161                                 #address-cells = <1>;
162                                 #size-cells = <0>;
163                                 compatible = "fsl,imx28-pinctrl", "simple-bus";
164                                 reg = <0x80018000 0x2000>;
165
166                                 gpio0: gpio@0 {
167                                         compatible = "fsl,imx28-gpio", "fsl,mxs-gpio";
168                                         reg = <0>;
169                                         interrupts = <127>;
170                                         gpio-controller;
171                                         #gpio-cells = <2>;
172                                         interrupt-controller;
173                                         #interrupt-cells = <2>;
174                                 };
175
176                                 gpio1: gpio@1 {
177                                         compatible = "fsl,imx28-gpio", "fsl,mxs-gpio";
178                                         reg = <1>;
179                                         interrupts = <126>;
180                                         gpio-controller;
181                                         #gpio-cells = <2>;
182                                         interrupt-controller;
183                                         #interrupt-cells = <2>;
184                                 };
185
186                                 gpio2: gpio@2 {
187                                         compatible = "fsl,imx28-gpio", "fsl,mxs-gpio";
188                                         reg = <2>;
189                                         interrupts = <125>;
190                                         gpio-controller;
191                                         #gpio-cells = <2>;
192                                         interrupt-controller;
193                                         #interrupt-cells = <2>;
194                                 };
195
196                                 gpio3: gpio@3 {
197                                         compatible = "fsl,imx28-gpio", "fsl,mxs-gpio";
198                                         reg = <3>;
199                                         interrupts = <124>;
200                                         gpio-controller;
201                                         #gpio-cells = <2>;
202                                         interrupt-controller;
203                                         #interrupt-cells = <2>;
204                                 };
205
206                                 gpio4: gpio@4 {
207                                         compatible = "fsl,imx28-gpio", "fsl,mxs-gpio";
208                                         reg = <4>;
209                                         interrupts = <123>;
210                                         gpio-controller;
211                                         #gpio-cells = <2>;
212                                         interrupt-controller;
213                                         #interrupt-cells = <2>;
214                                 };
215
216                                 duart_pins_a: duart@0 {
217                                         reg = <0>;
218                                         fsl,pinmux-ids = <
219                                                 MX28_PAD_PWM0__DUART_RX
220                                                 MX28_PAD_PWM1__DUART_TX
221                                         >;
222                                         fsl,drive-strength = <MXS_DRIVE_4mA>;
223                                         fsl,voltage = <MXS_VOLTAGE_HIGH>;
224                                         fsl,pull-up = <MXS_PULL_DISABLE>;
225                                 };
226
227                                 duart_pins_b: duart@1 {
228                                         reg = <1>;
229                                         fsl,pinmux-ids = <
230                                                 MX28_PAD_AUART0_CTS__DUART_RX
231                                                 MX28_PAD_AUART0_RTS__DUART_TX
232                                         >;
233                                         fsl,drive-strength = <MXS_DRIVE_4mA>;
234                                         fsl,voltage = <MXS_VOLTAGE_HIGH>;
235                                         fsl,pull-up = <MXS_PULL_DISABLE>;
236                                 };
237
238                                 duart_4pins_a: duart-4pins@0 {
239                                         reg = <0>;
240                                         fsl,pinmux-ids = <
241                                                 MX28_PAD_AUART0_CTS__DUART_RX
242                                                 MX28_PAD_AUART0_RTS__DUART_TX
243                                                 MX28_PAD_AUART0_RX__DUART_CTS
244                                                 MX28_PAD_AUART0_TX__DUART_RTS
245                                         >;
246                                         fsl,drive-strength = <MXS_DRIVE_4mA>;
247                                         fsl,voltage = <MXS_VOLTAGE_HIGH>;
248                                         fsl,pull-up = <MXS_PULL_DISABLE>;
249                                 };
250
251                                 gpmi_pins_a: gpmi-nand@0 {
252                                         reg = <0>;
253                                         fsl,pinmux-ids = <
254                                                 MX28_PAD_GPMI_D00__GPMI_D0
255                                                 MX28_PAD_GPMI_D01__GPMI_D1
256                                                 MX28_PAD_GPMI_D02__GPMI_D2
257                                                 MX28_PAD_GPMI_D03__GPMI_D3
258                                                 MX28_PAD_GPMI_D04__GPMI_D4
259                                                 MX28_PAD_GPMI_D05__GPMI_D5
260                                                 MX28_PAD_GPMI_D06__GPMI_D6
261                                                 MX28_PAD_GPMI_D07__GPMI_D7
262                                                 MX28_PAD_GPMI_CE0N__GPMI_CE0N
263                                                 MX28_PAD_GPMI_RDY0__GPMI_READY0
264                                                 MX28_PAD_GPMI_RDN__GPMI_RDN
265                                                 MX28_PAD_GPMI_WRN__GPMI_WRN
266                                                 MX28_PAD_GPMI_ALE__GPMI_ALE
267                                                 MX28_PAD_GPMI_CLE__GPMI_CLE
268                                                 MX28_PAD_GPMI_RESETN__GPMI_RESETN
269                                         >;
270                                         fsl,drive-strength = <MXS_DRIVE_4mA>;
271                                         fsl,voltage = <MXS_VOLTAGE_HIGH>;
272                                         fsl,pull-up = <MXS_PULL_DISABLE>;
273                                 };
274
275                                 gpmi_status_cfg: gpmi-status-cfg {
276                                         fsl,pinmux-ids = <
277                                                 MX28_PAD_GPMI_RDN__GPMI_RDN
278                                                 MX28_PAD_GPMI_WRN__GPMI_WRN
279                                                 MX28_PAD_GPMI_RESETN__GPMI_RESETN
280                                         >;
281                                         fsl,drive-strength = <MXS_DRIVE_12mA>;
282                                 };
283
284                                 auart0_pins_a: auart0@0 {
285                                         reg = <0>;
286                                         fsl,pinmux-ids = <
287                                                 MX28_PAD_AUART0_RX__AUART0_RX
288                                                 MX28_PAD_AUART0_TX__AUART0_TX
289                                                 MX28_PAD_AUART0_CTS__AUART0_CTS
290                                                 MX28_PAD_AUART0_RTS__AUART0_RTS
291                                         >;
292                                         fsl,drive-strength = <MXS_DRIVE_4mA>;
293                                         fsl,voltage = <MXS_VOLTAGE_HIGH>;
294                                         fsl,pull-up = <MXS_PULL_DISABLE>;
295                                 };
296
297                                 auart0_2pins_a: auart0-2pins@0 {
298                                         reg = <0>;
299                                         fsl,pinmux-ids = <
300                                                 MX28_PAD_AUART0_RX__AUART0_RX
301                                                 MX28_PAD_AUART0_TX__AUART0_TX
302                                         >;
303                                         fsl,drive-strength = <MXS_DRIVE_4mA>;
304                                         fsl,voltage = <MXS_VOLTAGE_HIGH>;
305                                         fsl,pull-up = <MXS_PULL_DISABLE>;
306                                 };
307
308                                 auart1_pins_a: auart1@0 {
309                                         reg = <0>;
310                                         fsl,pinmux-ids = <
311                                                 MX28_PAD_AUART1_RX__AUART1_RX
312                                                 MX28_PAD_AUART1_TX__AUART1_TX
313                                                 MX28_PAD_AUART1_CTS__AUART1_CTS
314                                                 MX28_PAD_AUART1_RTS__AUART1_RTS
315                                         >;
316                                         fsl,drive-strength = <MXS_DRIVE_4mA>;
317                                         fsl,voltage = <MXS_VOLTAGE_HIGH>;
318                                         fsl,pull-up = <MXS_PULL_DISABLE>;
319                                 };
320
321                                 auart1_2pins_a: auart1-2pins@0 {
322                                         reg = <0>;
323                                         fsl,pinmux-ids = <
324                                                 MX28_PAD_AUART1_RX__AUART1_RX
325                                                 MX28_PAD_AUART1_TX__AUART1_TX
326                                         >;
327                                         fsl,drive-strength = <MXS_DRIVE_4mA>;
328                                         fsl,voltage = <MXS_VOLTAGE_HIGH>;
329                                         fsl,pull-up = <MXS_PULL_DISABLE>;
330                                 };
331
332                                 auart2_2pins_a: auart2-2pins@0 {
333                                         reg = <0>;
334                                         fsl,pinmux-ids = <
335                                                 MX28_PAD_SSP2_SCK__AUART2_RX
336                                                 MX28_PAD_SSP2_MOSI__AUART2_TX
337                                         >;
338                                         fsl,drive-strength = <MXS_DRIVE_4mA>;
339                                         fsl,voltage = <MXS_VOLTAGE_HIGH>;
340                                         fsl,pull-up = <MXS_PULL_DISABLE>;
341                                 };
342
343                                 auart2_2pins_b: auart2-2pins@1 {
344                                         reg = <1>;
345                                         fsl,pinmux-ids = <
346                                                 MX28_PAD_AUART2_RX__AUART2_RX
347                                                 MX28_PAD_AUART2_TX__AUART2_TX
348                                         >;
349                                         fsl,drive-strength = <MXS_DRIVE_4mA>;
350                                         fsl,voltage = <MXS_VOLTAGE_HIGH>;
351                                         fsl,pull-up = <MXS_PULL_DISABLE>;
352                                 };
353
354                                 auart2_pins_a: auart2-pins@0 {
355                                         reg = <0>;
356                                         fsl,pinmux-ids = <
357                                                 MX28_PAD_AUART2_RX__AUART2_RX
358                                                 MX28_PAD_AUART2_TX__AUART2_TX
359                                                 MX28_PAD_AUART2_CTS__AUART2_CTS
360                                                 MX28_PAD_AUART2_RTS__AUART2_RTS
361                                         >;
362                                         fsl,drive-strength = <MXS_DRIVE_4mA>;
363                                         fsl,voltage = <MXS_VOLTAGE_HIGH>;
364                                         fsl,pull-up = <MXS_PULL_DISABLE>;
365                                 };
366
367                                 auart3_pins_a: auart3@0 {
368                                         reg = <0>;
369                                         fsl,pinmux-ids = <
370                                                 MX28_PAD_AUART3_RX__AUART3_RX
371                                                 MX28_PAD_AUART3_TX__AUART3_TX
372                                                 MX28_PAD_AUART3_CTS__AUART3_CTS
373                                                 MX28_PAD_AUART3_RTS__AUART3_RTS
374                                         >;
375                                         fsl,drive-strength = <MXS_DRIVE_4mA>;
376                                         fsl,voltage = <MXS_VOLTAGE_HIGH>;
377                                         fsl,pull-up = <MXS_PULL_DISABLE>;
378                                 };
379
380                                 auart3_2pins_a: auart3-2pins@0 {
381                                         reg = <0>;
382                                         fsl,pinmux-ids = <
383                                                 MX28_PAD_SSP2_MISO__AUART3_RX
384                                                 MX28_PAD_SSP2_SS0__AUART3_TX
385                                         >;
386                                         fsl,drive-strength = <MXS_DRIVE_4mA>;
387                                         fsl,voltage = <MXS_VOLTAGE_HIGH>;
388                                         fsl,pull-up = <MXS_PULL_DISABLE>;
389                                 };
390
391                                 auart3_2pins_b: auart3-2pins@1 {
392                                         reg = <1>;
393                                         fsl,pinmux-ids = <
394                                                 MX28_PAD_AUART3_RX__AUART3_RX
395                                                 MX28_PAD_AUART3_TX__AUART3_TX
396                                         >;
397                                         fsl,drive-strength = <MXS_DRIVE_4mA>;
398                                         fsl,voltage = <MXS_VOLTAGE_HIGH>;
399                                         fsl,pull-up = <MXS_PULL_DISABLE>;
400                                 };
401
402                                 auart4_2pins_a: auart4@0 {
403                                         reg = <0>;
404                                         fsl,pinmux-ids = <
405                                                 MX28_PAD_SSP3_SCK__AUART4_TX
406                                                 MX28_PAD_SSP3_MOSI__AUART4_RX
407                                         >;
408                                         fsl,drive-strength = <MXS_DRIVE_4mA>;
409                                         fsl,voltage = <MXS_VOLTAGE_HIGH>;
410                                         fsl,pull-up = <MXS_PULL_DISABLE>;
411                                 };
412
413                                 auart4_2pins_b: auart4@1 {
414                                         reg = <1>;
415                                         fsl,pinmux-ids = <
416                                                 MX28_PAD_AUART0_CTS__AUART4_RX
417                                                 MX28_PAD_AUART0_RTS__AUART4_TX
418                                         >;
419                                         fsl,drive-strength = <MXS_DRIVE_4mA>;
420                                         fsl,voltage = <MXS_VOLTAGE_HIGH>;
421                                         fsl,pull-up = <MXS_PULL_DISABLE>;
422                                 };
423
424                                 mac0_pins_a: mac0@0 {
425                                         reg = <0>;
426                                         fsl,pinmux-ids = <
427                                                 MX28_PAD_ENET0_MDC__ENET0_MDC
428                                                 MX28_PAD_ENET0_MDIO__ENET0_MDIO
429                                                 MX28_PAD_ENET0_RX_EN__ENET0_RX_EN
430                                                 MX28_PAD_ENET0_RXD0__ENET0_RXD0
431                                                 MX28_PAD_ENET0_RXD1__ENET0_RXD1
432                                                 MX28_PAD_ENET0_TX_EN__ENET0_TX_EN
433                                                 MX28_PAD_ENET0_TXD0__ENET0_TXD0
434                                                 MX28_PAD_ENET0_TXD1__ENET0_TXD1
435                                                 MX28_PAD_ENET_CLK__CLKCTRL_ENET
436                                         >;
437                                         fsl,drive-strength = <MXS_DRIVE_8mA>;
438                                         fsl,voltage = <MXS_VOLTAGE_HIGH>;
439                                         fsl,pull-up = <MXS_PULL_ENABLE>;
440                                 };
441
442                                 mac0_pins_b: mac0@1 {
443                                         reg = <1>;
444                                         fsl,pinmux-ids = <
445                                                 MX28_PAD_ENET0_MDC__ENET0_MDC
446                                                 MX28_PAD_ENET0_MDIO__ENET0_MDIO
447                                                 MX28_PAD_ENET0_RX_EN__ENET0_RX_EN
448                                                 MX28_PAD_ENET0_RXD0__ENET0_RXD0
449                                                 MX28_PAD_ENET0_RXD1__ENET0_RXD1
450                                                 MX28_PAD_ENET0_RXD2__ENET0_RXD2
451                                                 MX28_PAD_ENET0_RXD3__ENET0_RXD3
452                                                 MX28_PAD_ENET0_TX_EN__ENET0_TX_EN
453                                                 MX28_PAD_ENET0_TXD0__ENET0_TXD0
454                                                 MX28_PAD_ENET0_TXD1__ENET0_TXD1
455                                                 MX28_PAD_ENET0_TXD2__ENET0_TXD2
456                                                 MX28_PAD_ENET0_TXD3__ENET0_TXD3
457                                                 MX28_PAD_ENET_CLK__CLKCTRL_ENET
458                                                 MX28_PAD_ENET0_COL__ENET0_COL
459                                                 MX28_PAD_ENET0_CRS__ENET0_CRS
460                                                 MX28_PAD_ENET0_TX_CLK__ENET0_TX_CLK
461                                                 MX28_PAD_ENET0_RX_CLK__ENET0_RX_CLK
462                                                 >;
463                                         fsl,drive-strength = <MXS_DRIVE_8mA>;
464                                         fsl,voltage = <MXS_VOLTAGE_HIGH>;
465                                         fsl,pull-up = <MXS_PULL_ENABLE>;
466                                 };
467
468                                 mac1_pins_a: mac1@0 {
469                                         reg = <0>;
470                                         fsl,pinmux-ids = <
471                                                 MX28_PAD_ENET0_CRS__ENET1_RX_EN
472                                                 MX28_PAD_ENET0_RXD2__ENET1_RXD0
473                                                 MX28_PAD_ENET0_RXD3__ENET1_RXD1
474                                                 MX28_PAD_ENET0_COL__ENET1_TX_EN
475                                                 MX28_PAD_ENET0_TXD2__ENET1_TXD0
476                                                 MX28_PAD_ENET0_TXD3__ENET1_TXD1
477                                         >;
478                                         fsl,drive-strength = <MXS_DRIVE_8mA>;
479                                         fsl,voltage = <MXS_VOLTAGE_HIGH>;
480                                         fsl,pull-up = <MXS_PULL_ENABLE>;
481                                 };
482
483                                 mmc0_8bit_pins_a: mmc0-8bit@0 {
484                                         reg = <0>;
485                                         fsl,pinmux-ids = <
486                                                 MX28_PAD_SSP0_DATA0__SSP0_D0
487                                                 MX28_PAD_SSP0_DATA1__SSP0_D1
488                                                 MX28_PAD_SSP0_DATA2__SSP0_D2
489                                                 MX28_PAD_SSP0_DATA3__SSP0_D3
490                                                 MX28_PAD_SSP0_DATA4__SSP0_D4
491                                                 MX28_PAD_SSP0_DATA5__SSP0_D5
492                                                 MX28_PAD_SSP0_DATA6__SSP0_D6
493                                                 MX28_PAD_SSP0_DATA7__SSP0_D7
494                                                 MX28_PAD_SSP0_CMD__SSP0_CMD
495                                                 MX28_PAD_SSP0_DETECT__SSP0_CARD_DETECT
496                                                 MX28_PAD_SSP0_SCK__SSP0_SCK
497                                         >;
498                                         fsl,drive-strength = <MXS_DRIVE_8mA>;
499                                         fsl,voltage = <MXS_VOLTAGE_HIGH>;
500                                         fsl,pull-up = <MXS_PULL_ENABLE>;
501                                 };
502
503                                 mmc0_4bit_pins_a: mmc0-4bit@0 {
504                                         reg = <0>;
505                                         fsl,pinmux-ids = <
506                                                 MX28_PAD_SSP0_DATA0__SSP0_D0
507                                                 MX28_PAD_SSP0_DATA1__SSP0_D1
508                                                 MX28_PAD_SSP0_DATA2__SSP0_D2
509                                                 MX28_PAD_SSP0_DATA3__SSP0_D3
510                                                 MX28_PAD_SSP0_CMD__SSP0_CMD
511                                                 MX28_PAD_SSP0_DETECT__SSP0_CARD_DETECT
512                                                 MX28_PAD_SSP0_SCK__SSP0_SCK
513                                         >;
514                                         fsl,drive-strength = <MXS_DRIVE_8mA>;
515                                         fsl,voltage = <MXS_VOLTAGE_HIGH>;
516                                         fsl,pull-up = <MXS_PULL_ENABLE>;
517                                 };
518
519                                 mmc0_cd_cfg: mmc0-cd-cfg {
520                                         fsl,pinmux-ids = <
521                                                 MX28_PAD_SSP0_DETECT__SSP0_CARD_DETECT
522                                         >;
523                                         fsl,pull-up = <MXS_PULL_DISABLE>;
524                                 };
525
526                                 mmc0_sck_cfg: mmc0-sck-cfg {
527                                         fsl,pinmux-ids = <
528                                                 MX28_PAD_SSP0_SCK__SSP0_SCK
529                                         >;
530                                         fsl,drive-strength = <MXS_DRIVE_12mA>;
531                                         fsl,pull-up = <MXS_PULL_DISABLE>;
532                                 };
533
534                                 mmc1_4bit_pins_a: mmc1-4bit@0 {
535                                         reg = <0>;
536                                         fsl,pinmux-ids = <
537                                                 MX28_PAD_GPMI_D00__SSP1_D0
538                                                 MX28_PAD_GPMI_D01__SSP1_D1
539                                                 MX28_PAD_GPMI_D02__SSP1_D2
540                                                 MX28_PAD_GPMI_D03__SSP1_D3
541                                                 MX28_PAD_GPMI_RDY1__SSP1_CMD
542                                                 MX28_PAD_GPMI_RDY0__SSP1_CARD_DETECT
543                                                 MX28_PAD_GPMI_WRN__SSP1_SCK
544                                         >;
545                                         fsl,drive-strength = <MXS_DRIVE_8mA>;
546                                         fsl,voltage = <MXS_VOLTAGE_HIGH>;
547                                         fsl,pull-up = <MXS_PULL_ENABLE>;
548                                 };
549
550                                 mmc1_cd_cfg: mmc1-cd-cfg {
551                                         fsl,pinmux-ids = <
552                                                 MX28_PAD_GPMI_RDY0__SSP1_CARD_DETECT
553                                         >;
554                                         fsl,pull-up = <MXS_PULL_DISABLE>;
555                                 };
556
557                                 mmc1_sck_cfg: mmc1-sck-cfg {
558                                         fsl,pinmux-ids = <
559                                                 MX28_PAD_GPMI_WRN__SSP1_SCK
560                                         >;
561                                         fsl,drive-strength = <MXS_DRIVE_12mA>;
562                                         fsl,pull-up = <MXS_PULL_DISABLE>;
563                                 };
564
565
566                                 mmc2_4bit_pins_a: mmc2-4bit@0 {
567                                         reg = <0>;
568                                         fsl,pinmux-ids = <
569                                                 MX28_PAD_SSP0_DATA4__SSP2_D0
570                                                 MX28_PAD_SSP1_SCK__SSP2_D1
571                                                 MX28_PAD_SSP1_CMD__SSP2_D2
572                                                 MX28_PAD_SSP0_DATA5__SSP2_D3
573                                                 MX28_PAD_SSP0_DATA6__SSP2_CMD
574                                                 MX28_PAD_AUART1_RX__SSP2_CARD_DETECT
575                                                 MX28_PAD_SSP0_DATA7__SSP2_SCK
576                                         >;
577                                         fsl,drive-strength = <MXS_DRIVE_8mA>;
578                                         fsl,voltage = <MXS_VOLTAGE_HIGH>;
579                                         fsl,pull-up = <MXS_PULL_ENABLE>;
580                                 };
581
582                                 mmc2_cd_cfg: mmc2-cd-cfg {
583                                         fsl,pinmux-ids = <
584                                                 MX28_PAD_AUART1_RX__SSP2_CARD_DETECT
585                                         >;
586                                         fsl,pull-up = <MXS_PULL_DISABLE>;
587                                 };
588
589                                 mmc2_sck_cfg: mmc2-sck-cfg {
590                                         fsl,pinmux-ids = <
591                                                 MX28_PAD_SSP0_DATA7__SSP2_SCK
592                                         >;
593                                         fsl,drive-strength = <MXS_DRIVE_12mA>;
594                                         fsl,pull-up = <MXS_PULL_DISABLE>;
595                                 };
596
597                                 i2c0_pins_a: i2c0@0 {
598                                         reg = <0>;
599                                         fsl,pinmux-ids = <
600                                                 MX28_PAD_I2C0_SCL__I2C0_SCL
601                                                 MX28_PAD_I2C0_SDA__I2C0_SDA
602                                         >;
603                                         fsl,drive-strength = <MXS_DRIVE_8mA>;
604                                         fsl,voltage = <MXS_VOLTAGE_HIGH>;
605                                         fsl,pull-up = <MXS_PULL_ENABLE>;
606                                 };
607
608                                 i2c0_pins_b: i2c0@1 {
609                                         reg = <1>;
610                                         fsl,pinmux-ids = <
611                                                 MX28_PAD_AUART0_RX__I2C0_SCL
612                                                 MX28_PAD_AUART0_TX__I2C0_SDA
613                                         >;
614                                         fsl,drive-strength = <MXS_DRIVE_8mA>;
615                                         fsl,voltage = <MXS_VOLTAGE_HIGH>;
616                                         fsl,pull-up = <MXS_PULL_ENABLE>;
617                                 };
618
619                                 i2c1_pins_a: i2c1@0 {
620                                         reg = <0>;
621                                         fsl,pinmux-ids = <
622                                                 MX28_PAD_PWM0__I2C1_SCL
623                                                 MX28_PAD_PWM1__I2C1_SDA
624                                         >;
625                                         fsl,drive-strength = <MXS_DRIVE_8mA>;
626                                         fsl,voltage = <MXS_VOLTAGE_HIGH>;
627                                         fsl,pull-up = <MXS_PULL_ENABLE>;
628                                 };
629
630                                 i2c1_pins_b: i2c1@1 {
631                                         reg = <1>;
632                                         fsl,pinmux-ids = <
633                                                 MX28_PAD_AUART2_CTS__I2C1_SCL
634                                                 MX28_PAD_AUART2_RTS__I2C1_SDA
635                                         >;
636                                         fsl,drive-strength = <MXS_DRIVE_8mA>;
637                                         fsl,voltage = <MXS_VOLTAGE_HIGH>;
638                                         fsl,pull-up = <MXS_PULL_ENABLE>;
639                                 };
640
641                                 saif0_pins_a: saif0@0 {
642                                         reg = <0>;
643                                         fsl,pinmux-ids = <
644                                                 MX28_PAD_SAIF0_MCLK__SAIF0_MCLK
645                                                 MX28_PAD_SAIF0_LRCLK__SAIF0_LRCLK
646                                                 MX28_PAD_SAIF0_BITCLK__SAIF0_BITCLK
647                                                 MX28_PAD_SAIF0_SDATA0__SAIF0_SDATA0
648                                         >;
649                                         fsl,drive-strength = <MXS_DRIVE_12mA>;
650                                         fsl,voltage = <MXS_VOLTAGE_HIGH>;
651                                         fsl,pull-up = <MXS_PULL_ENABLE>;
652                                 };
653
654                                 saif0_pins_b: saif0@1 {
655                                         reg = <1>;
656                                         fsl,pinmux-ids = <
657                                                 MX28_PAD_SAIF0_LRCLK__SAIF0_LRCLK
658                                                 MX28_PAD_SAIF0_BITCLK__SAIF0_BITCLK
659                                                 MX28_PAD_SAIF0_SDATA0__SAIF0_SDATA0
660                                         >;
661                                         fsl,drive-strength = <MXS_DRIVE_12mA>;
662                                         fsl,voltage = <MXS_VOLTAGE_HIGH>;
663                                         fsl,pull-up = <MXS_PULL_ENABLE>;
664                                 };
665
666                                 saif1_pins_a: saif1@0 {
667                                         reg = <0>;
668                                         fsl,pinmux-ids = <
669                                                 MX28_PAD_SAIF1_SDATA0__SAIF1_SDATA0
670                                         >;
671                                         fsl,drive-strength = <MXS_DRIVE_12mA>;
672                                         fsl,voltage = <MXS_VOLTAGE_HIGH>;
673                                         fsl,pull-up = <MXS_PULL_ENABLE>;
674                                 };
675
676                                 pwm0_pins_a: pwm0@0 {
677                                         reg = <0>;
678                                         fsl,pinmux-ids = <
679                                                 MX28_PAD_PWM0__PWM_0
680                                         >;
681                                         fsl,drive-strength = <MXS_DRIVE_4mA>;
682                                         fsl,voltage = <MXS_VOLTAGE_HIGH>;
683                                         fsl,pull-up = <MXS_PULL_DISABLE>;
684                                 };
685
686                                 pwm2_pins_a: pwm2@0 {
687                                         reg = <0>;
688                                         fsl,pinmux-ids = <
689                                                 MX28_PAD_PWM2__PWM_2
690                                         >;
691                                         fsl,drive-strength = <MXS_DRIVE_4mA>;
692                                         fsl,voltage = <MXS_VOLTAGE_HIGH>;
693                                         fsl,pull-up = <MXS_PULL_DISABLE>;
694                                 };
695
696                                 pwm3_pins_a: pwm3@0 {
697                                         reg = <0>;
698                                         fsl,pinmux-ids = <
699                                                 MX28_PAD_PWM3__PWM_3
700                                         >;
701                                         fsl,drive-strength = <MXS_DRIVE_4mA>;
702                                         fsl,voltage = <MXS_VOLTAGE_HIGH>;
703                                         fsl,pull-up = <MXS_PULL_DISABLE>;
704                                 };
705
706                                 pwm3_pins_b: pwm3@1 {
707                                         reg = <1>;
708                                         fsl,pinmux-ids = <
709                                                 MX28_PAD_SAIF0_MCLK__PWM_3
710                                         >;
711                                         fsl,drive-strength = <MXS_DRIVE_4mA>;
712                                         fsl,voltage = <MXS_VOLTAGE_HIGH>;
713                                         fsl,pull-up = <MXS_PULL_DISABLE>;
714                                 };
715
716                                 pwm4_pins_a: pwm4@0 {
717                                         reg = <0>;
718                                         fsl,pinmux-ids = <
719                                                 MX28_PAD_PWM4__PWM_4
720                                         >;
721                                         fsl,drive-strength = <MXS_DRIVE_4mA>;
722                                         fsl,voltage = <MXS_VOLTAGE_HIGH>;
723                                         fsl,pull-up = <MXS_PULL_DISABLE>;
724                                 };
725
726                                 lcdif_24bit_pins_a: lcdif-24bit@0 {
727                                         reg = <0>;
728                                         fsl,pinmux-ids = <
729                                                 MX28_PAD_LCD_D00__LCD_D0
730                                                 MX28_PAD_LCD_D01__LCD_D1
731                                                 MX28_PAD_LCD_D02__LCD_D2
732                                                 MX28_PAD_LCD_D03__LCD_D3
733                                                 MX28_PAD_LCD_D04__LCD_D4
734                                                 MX28_PAD_LCD_D05__LCD_D5
735                                                 MX28_PAD_LCD_D06__LCD_D6
736                                                 MX28_PAD_LCD_D07__LCD_D7
737                                                 MX28_PAD_LCD_D08__LCD_D8
738                                                 MX28_PAD_LCD_D09__LCD_D9
739                                                 MX28_PAD_LCD_D10__LCD_D10
740                                                 MX28_PAD_LCD_D11__LCD_D11
741                                                 MX28_PAD_LCD_D12__LCD_D12
742                                                 MX28_PAD_LCD_D13__LCD_D13
743                                                 MX28_PAD_LCD_D14__LCD_D14
744                                                 MX28_PAD_LCD_D15__LCD_D15
745                                                 MX28_PAD_LCD_D16__LCD_D16
746                                                 MX28_PAD_LCD_D17__LCD_D17
747                                                 MX28_PAD_LCD_D18__LCD_D18
748                                                 MX28_PAD_LCD_D19__LCD_D19
749                                                 MX28_PAD_LCD_D20__LCD_D20
750                                                 MX28_PAD_LCD_D21__LCD_D21
751                                                 MX28_PAD_LCD_D22__LCD_D22
752                                                 MX28_PAD_LCD_D23__LCD_D23
753                                         >;
754                                         fsl,drive-strength = <MXS_DRIVE_4mA>;
755                                         fsl,voltage = <MXS_VOLTAGE_HIGH>;
756                                         fsl,pull-up = <MXS_PULL_DISABLE>;
757                                 };
758
759                                 lcdif_18bit_pins_a: lcdif-18bit@0 {
760                                         reg = <0>;
761                                         fsl,pinmux-ids = <
762                                                 MX28_PAD_LCD_D00__LCD_D0
763                                                 MX28_PAD_LCD_D01__LCD_D1
764                                                 MX28_PAD_LCD_D02__LCD_D2
765                                                 MX28_PAD_LCD_D03__LCD_D3
766                                                 MX28_PAD_LCD_D04__LCD_D4
767                                                 MX28_PAD_LCD_D05__LCD_D5
768                                                 MX28_PAD_LCD_D06__LCD_D6
769                                                 MX28_PAD_LCD_D07__LCD_D7
770                                                 MX28_PAD_LCD_D08__LCD_D8
771                                                 MX28_PAD_LCD_D09__LCD_D9
772                                                 MX28_PAD_LCD_D10__LCD_D10
773                                                 MX28_PAD_LCD_D11__LCD_D11
774                                                 MX28_PAD_LCD_D12__LCD_D12
775                                                 MX28_PAD_LCD_D13__LCD_D13
776                                                 MX28_PAD_LCD_D14__LCD_D14
777                                                 MX28_PAD_LCD_D15__LCD_D15
778                                                 MX28_PAD_LCD_D16__LCD_D16
779                                                 MX28_PAD_LCD_D17__LCD_D17
780                                         >;
781                                         fsl,drive-strength = <MXS_DRIVE_4mA>;
782                                         fsl,voltage = <MXS_VOLTAGE_HIGH>;
783                                         fsl,pull-up = <MXS_PULL_DISABLE>;
784                                 };
785
786                                 lcdif_16bit_pins_a: lcdif-16bit@0 {
787                                         reg = <0>;
788                                         fsl,pinmux-ids = <
789                                                 MX28_PAD_LCD_D00__LCD_D0
790                                                 MX28_PAD_LCD_D01__LCD_D1
791                                                 MX28_PAD_LCD_D02__LCD_D2
792                                                 MX28_PAD_LCD_D03__LCD_D3
793                                                 MX28_PAD_LCD_D04__LCD_D4
794                                                 MX28_PAD_LCD_D05__LCD_D5
795                                                 MX28_PAD_LCD_D06__LCD_D6
796                                                 MX28_PAD_LCD_D07__LCD_D7
797                                                 MX28_PAD_LCD_D08__LCD_D8
798                                                 MX28_PAD_LCD_D09__LCD_D9
799                                                 MX28_PAD_LCD_D10__LCD_D10
800                                                 MX28_PAD_LCD_D11__LCD_D11
801                                                 MX28_PAD_LCD_D12__LCD_D12
802                                                 MX28_PAD_LCD_D13__LCD_D13
803                                                 MX28_PAD_LCD_D14__LCD_D14
804                                                 MX28_PAD_LCD_D15__LCD_D15
805                                         >;
806                                         fsl,drive-strength = <MXS_DRIVE_4mA>;
807                                         fsl,voltage = <MXS_VOLTAGE_HIGH>;
808                                         fsl,pull-up = <MXS_PULL_DISABLE>;
809                                 };
810
811                                 lcdif_sync_pins_a: lcdif-sync@0 {
812                                         reg = <0>;
813                                         fsl,pinmux-ids = <
814                                                 MX28_PAD_LCD_RS__LCD_DOTCLK
815                                                 MX28_PAD_LCD_CS__LCD_ENABLE
816                                                 MX28_PAD_LCD_RD_E__LCD_VSYNC
817                                                 MX28_PAD_LCD_WR_RWN__LCD_HSYNC
818                                         >;
819                                         fsl,drive-strength = <MXS_DRIVE_4mA>;
820                                         fsl,voltage = <MXS_VOLTAGE_HIGH>;
821                                         fsl,pull-up = <MXS_PULL_DISABLE>;
822                                 };
823
824                                 can0_pins_a: can0@0 {
825                                         reg = <0>;
826                                         fsl,pinmux-ids = <
827                                                 MX28_PAD_GPMI_RDY2__CAN0_TX
828                                                 MX28_PAD_GPMI_RDY3__CAN0_RX
829                                         >;
830                                         fsl,drive-strength = <MXS_DRIVE_4mA>;
831                                         fsl,voltage = <MXS_VOLTAGE_HIGH>;
832                                         fsl,pull-up = <MXS_PULL_DISABLE>;
833                                 };
834
835                                 can1_pins_a: can1@0 {
836                                         reg = <0>;
837                                         fsl,pinmux-ids = <
838                                                 MX28_PAD_GPMI_CE2N__CAN1_TX
839                                                 MX28_PAD_GPMI_CE3N__CAN1_RX
840                                         >;
841                                         fsl,drive-strength = <MXS_DRIVE_4mA>;
842                                         fsl,voltage = <MXS_VOLTAGE_HIGH>;
843                                         fsl,pull-up = <MXS_PULL_DISABLE>;
844                                 };
845
846                                 spi2_pins_a: spi2@0 {
847                                         reg = <0>;
848                                         fsl,pinmux-ids = <
849                                                 MX28_PAD_SSP2_SCK__SSP2_SCK
850                                                 MX28_PAD_SSP2_MOSI__SSP2_CMD
851                                                 MX28_PAD_SSP2_MISO__SSP2_D0
852                                                 MX28_PAD_SSP2_SS0__SSP2_D3
853                                         >;
854                                         fsl,drive-strength = <MXS_DRIVE_8mA>;
855                                         fsl,voltage = <MXS_VOLTAGE_HIGH>;
856                                         fsl,pull-up = <MXS_PULL_ENABLE>;
857                                 };
858
859                                 spi3_pins_a: spi3@0 {
860                                         reg = <0>;
861                                         fsl,pinmux-ids = <
862                                                 MX28_PAD_AUART2_RX__SSP3_D4
863                                                 MX28_PAD_AUART2_TX__SSP3_D5
864                                                 MX28_PAD_SSP3_SCK__SSP3_SCK
865                                                 MX28_PAD_SSP3_MOSI__SSP3_CMD
866                                                 MX28_PAD_SSP3_MISO__SSP3_D0
867                                                 MX28_PAD_SSP3_SS0__SSP3_D3
868                                         >;
869                                         fsl,drive-strength = <MXS_DRIVE_8mA>;
870                                         fsl,voltage = <MXS_VOLTAGE_HIGH>;
871                                         fsl,pull-up = <MXS_PULL_DISABLE>;
872                                 };
873
874                                 spi3_pins_b: spi3@1 {
875                                         reg = <1>;
876                                         fsl,pinmux-ids = <
877                                                 MX28_PAD_SSP3_SCK__SSP3_SCK
878                                                 MX28_PAD_SSP3_MOSI__SSP3_CMD
879                                                 MX28_PAD_SSP3_MISO__SSP3_D0
880                                                 MX28_PAD_SSP3_SS0__SSP3_D3
881                                         >;
882                                         fsl,drive-strength = <MXS_DRIVE_8mA>;
883                                         fsl,voltage = <MXS_VOLTAGE_HIGH>;
884                                         fsl,pull-up = <MXS_PULL_ENABLE>;
885                                 };
886
887                                 usb0_pins_a: usb0@0 {
888                                         reg = <0>;
889                                         fsl,pinmux-ids = <
890                                                 MX28_PAD_SSP2_SS2__USB0_OVERCURRENT
891                                         >;
892                                         fsl,drive-strength = <MXS_DRIVE_12mA>;
893                                         fsl,voltage = <MXS_VOLTAGE_HIGH>;
894                                         fsl,pull-up = <MXS_PULL_DISABLE>;
895                                 };
896
897                                 usb0_pins_b: usb0@1 {
898                                         reg = <1>;
899                                         fsl,pinmux-ids = <
900                                                 MX28_PAD_AUART1_CTS__USB0_OVERCURRENT
901                                         >;
902                                         fsl,drive-strength = <MXS_DRIVE_12mA>;
903                                         fsl,voltage = <MXS_VOLTAGE_HIGH>;
904                                         fsl,pull-up = <MXS_PULL_DISABLE>;
905                                 };
906
907                                 usb1_pins_a: usb1@0 {
908                                         reg = <0>;
909                                         fsl,pinmux-ids = <
910                                                 MX28_PAD_SSP2_SS1__USB1_OVERCURRENT
911                                         >;
912                                         fsl,drive-strength = <MXS_DRIVE_12mA>;
913                                         fsl,voltage = <MXS_VOLTAGE_HIGH>;
914                                         fsl,pull-up = <MXS_PULL_DISABLE>;
915                                 };
916
917                                 usb0_id_pins_a: usb0id@0 {
918                                         reg = <0>;
919                                         fsl,pinmux-ids = <
920                                                 MX28_PAD_AUART1_RTS__USB0_ID
921                                         >;
922                                         fsl,drive-strength = <MXS_DRIVE_12mA>;
923                                         fsl,voltage = <MXS_VOLTAGE_HIGH>;
924                                         fsl,pull-up = <MXS_PULL_ENABLE>;
925                                 };
926
927                                 usb0_id_pins_b: usb0id1@0 {
928                                         reg = <0>;
929                                         fsl,pinmux-ids = <
930                                                 MX28_PAD_PWM2__USB0_ID
931                                         >;
932                                         fsl,drive-strength = <MXS_DRIVE_12mA>;
933                                         fsl,voltage = <MXS_VOLTAGE_HIGH>;
934                                         fsl,pull-up = <MXS_PULL_ENABLE>;
935                                 };
936
937                         };
938
939                         digctl: digctl@8001c000 {
940                                 compatible = "fsl,imx28-digctl", "fsl,imx23-digctl";
941                                 reg = <0x8001c000 0x2000>;
942                                 interrupts = <89>;
943                                 status = "disabled";
944                         };
945
946                         etm: etm@80022000 {
947                                 reg = <0x80022000 0x2000>;
948                                 status = "disabled";
949                         };
950
951                         dma_apbx: dma-apbx@80024000 {
952                                 compatible = "fsl,imx28-dma-apbx";
953                                 reg = <0x80024000 0x2000>;
954                                 interrupts = <78 79 66 0
955                                               80 81 68 69
956                                               70 71 72 73
957                                               74 75 76 77>;
958                                 interrupt-names = "auart4-rx", "auart4-tx", "spdif-tx", "empty",
959                                                   "saif0", "saif1", "i2c0", "i2c1",
960                                                   "auart0-rx", "auart0-tx", "auart1-rx", "auart1-tx",
961                                                   "auart2-rx", "auart2-tx", "auart3-rx", "auart3-tx";
962                                 #dma-cells = <1>;
963                                 dma-channels = <16>;
964                                 clocks = <&clks 26>;
965                         };
966
967                         dcp: dcp@80028000 {
968                                 compatible = "fsl,imx28-dcp", "fsl,imx23-dcp";
969                                 reg = <0x80028000 0x2000>;
970                                 interrupts = <52 53 54>;
971                                 status = "okay";
972                         };
973
974                         pxp: pxp@8002a000 {
975                                 reg = <0x8002a000 0x2000>;
976                                 interrupts = <39>;
977                                 status = "disabled";
978                         };
979
980                         ocotp: ocotp@8002c000 {
981                                 compatible = "fsl,imx28-ocotp", "fsl,ocotp";
982                                 #address-cells = <1>;
983                                 #size-cells = <1>;
984                                 reg = <0x8002c000 0x2000>;
985                                 clocks = <&clks 25>;
986                         };
987
988                         axi-ahb@8002e000 {
989                                 reg = <0x8002e000 0x2000>;
990                                 status = "disabled";
991                         };
992
993                         lcdif: lcdif@80030000 {
994                                 compatible = "fsl,imx28-lcdif";
995                                 reg = <0x80030000 0x2000>;
996                                 interrupts = <38>;
997                                 clocks = <&clks 55>;
998                                 dmas = <&dma_apbh 13>;
999                                 dma-names = "rx";
1000                                 status = "disabled";
1001                         };
1002
1003                         can0: can@80032000 {
1004                                 compatible = "fsl,imx28-flexcan", "fsl,p1010-flexcan";
1005                                 reg = <0x80032000 0x2000>;
1006                                 interrupts = <8>;
1007                                 clocks = <&clks 58>, <&clks 58>;
1008                                 clock-names = "ipg", "per";
1009                                 status = "disabled";
1010                         };
1011
1012                         can1: can@80034000 {
1013                                 compatible = "fsl,imx28-flexcan", "fsl,p1010-flexcan";
1014                                 reg = <0x80034000 0x2000>;
1015                                 interrupts = <9>;
1016                                 clocks = <&clks 59>, <&clks 59>;
1017                                 clock-names = "ipg", "per";
1018                                 status = "disabled";
1019                         };
1020
1021                         simdbg: simdbg@8003c000 {
1022                                 reg = <0x8003c000 0x200>;
1023                                 status = "disabled";
1024                         };
1025
1026                         simgpmisel: simgpmisel@8003c200 {
1027                                 reg = <0x8003c200 0x100>;
1028                                 status = "disabled";
1029                         };
1030
1031                         simsspsel: simsspsel@8003c300 {
1032                                 reg = <0x8003c300 0x100>;
1033                                 status = "disabled";
1034                         };
1035
1036                         simmemsel: simmemsel@8003c400 {
1037                                 reg = <0x8003c400 0x100>;
1038                                 status = "disabled";
1039                         };
1040
1041                         gpiomon: gpiomon@8003c500 {
1042                                 reg = <0x8003c500 0x100>;
1043                                 status = "disabled";
1044                         };
1045
1046                         simenet: simenet@8003c700 {
1047                                 reg = <0x8003c700 0x100>;
1048                                 status = "disabled";
1049                         };
1050
1051                         armjtag: armjtag@8003c800 {
1052                                 reg = <0x8003c800 0x100>;
1053                                 status = "disabled";
1054                         };
1055                 };
1056
1057                 apbx@80040000 {
1058                         compatible = "simple-bus";
1059                         #address-cells = <1>;
1060                         #size-cells = <1>;
1061                         reg = <0x80040000 0x40000>;
1062                         ranges;
1063
1064                         clks: clkctrl@80040000 {
1065                                 compatible = "fsl,imx28-clkctrl", "fsl,clkctrl";
1066                                 reg = <0x80040000 0x2000>;
1067                                 #clock-cells = <1>;
1068                         };
1069
1070                         saif0: saif@80042000 {
1071                                 compatible = "fsl,imx28-saif";
1072                                 reg = <0x80042000 0x2000>;
1073                                 interrupts = <59>;
1074                                 #clock-cells = <0>;
1075                                 clocks = <&clks 53>;
1076                                 dmas = <&dma_apbx 4>;
1077                                 dma-names = "rx-tx";
1078                                 status = "disabled";
1079                         };
1080
1081                         power: power@80044000 {
1082                                 reg = <0x80044000 0x2000>;
1083                                 status = "disabled";
1084                         };
1085
1086                         saif1: saif@80046000 {
1087                                 compatible = "fsl,imx28-saif";
1088                                 reg = <0x80046000 0x2000>;
1089                                 interrupts = <58>;
1090                                 clocks = <&clks 54>;
1091                                 dmas = <&dma_apbx 5>;
1092                                 dma-names = "rx-tx";
1093                                 status = "disabled";
1094                         };
1095
1096                         lradc: lradc@80050000 {
1097                                 compatible = "fsl,imx28-lradc";
1098                                 reg = <0x80050000 0x2000>;
1099                                 interrupts = <10 14 15 16 17 18 19
1100                                                 20 21 22 23 24 25>;
1101                                 status = "disabled";
1102                                 clocks = <&clks 41>;
1103                                 #io-channel-cells = <1>;
1104                         };
1105
1106                         spdif: spdif@80054000 {
1107                                 reg = <0x80054000 0x2000>;
1108                                 interrupts = <45>;
1109                                 dmas = <&dma_apbx 2>;
1110                                 dma-names = "tx";
1111                                 status = "disabled";
1112                         };
1113
1114                         mxs_rtc: rtc@80056000 {
1115                                 compatible = "fsl,imx28-rtc", "fsl,stmp3xxx-rtc";
1116                                 reg = <0x80056000 0x2000>;
1117                                 interrupts = <29>;
1118                         };
1119
1120                         i2c0: i2c@80058000 {
1121                                 #address-cells = <1>;
1122                                 #size-cells = <0>;
1123                                 compatible = "fsl,imx28-i2c";
1124                                 reg = <0x80058000 0x2000>;
1125                                 interrupts = <111>;
1126                                 clock-frequency = <100000>;
1127                                 dmas = <&dma_apbx 6>;
1128                                 dma-names = "rx-tx";
1129                                 status = "disabled";
1130                         };
1131
1132                         i2c1: i2c@8005a000 {
1133                                 #address-cells = <1>;
1134                                 #size-cells = <0>;
1135                                 compatible = "fsl,imx28-i2c";
1136                                 reg = <0x8005a000 0x2000>;
1137                                 interrupts = <110>;
1138                                 clock-frequency = <100000>;
1139                                 dmas = <&dma_apbx 7>;
1140                                 dma-names = "rx-tx";
1141                                 status = "disabled";
1142                         };
1143
1144                         pwm: pwm@80064000 {
1145                                 compatible = "fsl,imx28-pwm", "fsl,imx23-pwm";
1146                                 reg = <0x80064000 0x2000>;
1147                                 clocks = <&clks 44>;
1148                                 #pwm-cells = <2>;
1149                                 fsl,pwm-number = <8>;
1150                                 status = "disabled";
1151                         };
1152
1153                         timer: timrot@80068000 {
1154                                 compatible = "fsl,imx28-timrot", "fsl,timrot";
1155                                 reg = <0x80068000 0x2000>;
1156                                 interrupts = <48 49 50 51>;
1157                                 clocks = <&clks 26>;
1158                         };
1159
1160                         auart0: serial@8006a000 {
1161                                 compatible = "fsl,imx28-auart", "fsl,imx23-auart";
1162                                 reg = <0x8006a000 0x2000>;
1163                                 interrupts = <112>;
1164                                 dmas = <&dma_apbx 8>, <&dma_apbx 9>;
1165                                 dma-names = "rx", "tx";
1166                                 clocks = <&clks 45>;
1167                                 status = "disabled";
1168                         };
1169
1170                         auart1: serial@8006c000 {
1171                                 compatible = "fsl,imx28-auart", "fsl,imx23-auart";
1172                                 reg = <0x8006c000 0x2000>;
1173                                 interrupts = <113>;
1174                                 dmas = <&dma_apbx 10>, <&dma_apbx 11>;
1175                                 dma-names = "rx", "tx";
1176                                 clocks = <&clks 45>;
1177                                 status = "disabled";
1178                         };
1179
1180                         auart2: serial@8006e000 {
1181                                 compatible = "fsl,imx28-auart", "fsl,imx23-auart";
1182                                 reg = <0x8006e000 0x2000>;
1183                                 interrupts = <114>;
1184                                 dmas = <&dma_apbx 12>, <&dma_apbx 13>;
1185                                 dma-names = "rx", "tx";
1186                                 clocks = <&clks 45>;
1187                                 status = "disabled";
1188                         };
1189
1190                         auart3: serial@80070000 {
1191                                 compatible = "fsl,imx28-auart", "fsl,imx23-auart";
1192                                 reg = <0x80070000 0x2000>;
1193                                 interrupts = <115>;
1194                                 dmas = <&dma_apbx 14>, <&dma_apbx 15>;
1195                                 dma-names = "rx", "tx";
1196                                 clocks = <&clks 45>;
1197                                 status = "disabled";
1198                         };
1199
1200                         auart4: serial@80072000 {
1201                                 compatible = "fsl,imx28-auart", "fsl,imx23-auart";
1202                                 reg = <0x80072000 0x2000>;
1203                                 interrupts = <116>;
1204                                 dmas = <&dma_apbx 0>, <&dma_apbx 1>;
1205                                 dma-names = "rx", "tx";
1206                                 clocks = <&clks 45>;
1207                                 status = "disabled";
1208                         };
1209
1210                         duart: serial@80074000 {
1211                                 compatible = "arm,pl011", "arm,primecell";
1212                                 reg = <0x80074000 0x1000>;
1213                                 interrupts = <47>;
1214                                 clocks = <&clks 45>, <&clks 26>;
1215                                 clock-names = "uart", "apb_pclk";
1216                                 status = "disabled";
1217                         };
1218
1219                         usbphy0: usbphy@8007c000 {
1220                                 compatible = "fsl,imx28-usbphy", "fsl,imx23-usbphy";
1221                                 reg = <0x8007c000 0x2000>;
1222                                 clocks = <&clks 62>;
1223                                 status = "disabled";
1224                         };
1225
1226                         usbphy1: usbphy@8007e000 {
1227                                 compatible = "fsl,imx28-usbphy", "fsl,imx23-usbphy";
1228                                 reg = <0x8007e000 0x2000>;
1229                                 clocks = <&clks 63>;
1230                                 status = "disabled";
1231                         };
1232                 };
1233         };
1234
1235         ahb@80080000 {
1236                 compatible = "simple-bus";
1237                 #address-cells = <1>;
1238                 #size-cells = <1>;
1239                 reg = <0x80080000 0x80000>;
1240                 ranges;
1241
1242                 usb0: usb@80080000 {
1243                         compatible = "fsl,imx28-usb", "fsl,imx27-usb";
1244                         reg = <0x80080000 0x10000>;
1245                         interrupts = <93>;
1246                         clocks = <&clks 60>;
1247                         fsl,usbphy = <&usbphy0>;
1248                         status = "disabled";
1249                 };
1250
1251                 usb1: usb@80090000 {
1252                         compatible = "fsl,imx28-usb", "fsl,imx27-usb";
1253                         reg = <0x80090000 0x10000>;
1254                         interrupts = <92>;
1255                         clocks = <&clks 61>;
1256                         fsl,usbphy = <&usbphy1>;
1257                         dr_mode = "host";
1258                         status = "disabled";
1259                 };
1260
1261                 dflpt: dflpt@800c0000 {
1262                         reg = <0x800c0000 0x10000>;
1263                         status = "disabled";
1264                 };
1265
1266                 mac0: ethernet@800f0000 {
1267                         compatible = "fsl,imx28-fec";
1268                         reg = <0x800f0000 0x4000>;
1269                         interrupts = <101>;
1270                         clocks = <&clks 57>, <&clks 57>, <&clks 64>;
1271                         clock-names = "ipg", "ahb", "enet_out";
1272                         status = "disabled";
1273                 };
1274
1275                 mac1: ethernet@800f4000 {
1276                         compatible = "fsl,imx28-fec";
1277                         reg = <0x800f4000 0x4000>;
1278                         interrupts = <102>;
1279                         clocks = <&clks 57>, <&clks 57>;
1280                         clock-names = "ipg", "ahb";
1281                         status = "disabled";
1282                 };
1283
1284                 etn_switch: switch@800f8000 {
1285                         reg = <0x800f8000 0x8000>;
1286                         status = "disabled";
1287                 };
1288         };
1289
1290         iio-hwmon {
1291                 compatible = "iio-hwmon";
1292                 io-channels = <&lradc 8>;
1293         };
1294 };