blob: 36ab8e054cee0a8ff5fcc1fb6938dc1d62a1e09f [file] [log] [blame]
Shawn Guoe29fe212013-05-03 11:26:30 +08001/*
2 * Copyright 2013 Freescale Semiconductor, Inc.
3 *
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License version 2 as
6 * published by the Free Software Foundation.
7 *
8 */
9
Troy Kisky13088c22013-11-14 14:02:12 -070010#include <dt-bindings/interrupt-controller/irq.h>
Shawn Guoe29fe212013-05-03 11:26:30 +080011#include "skeleton.dtsi"
12#include "imx6sl-pinfunc.h"
13#include <dt-bindings/clock/imx6sl-clock.h>
14
15/ {
16 aliases {
Marek Vasut22970072014-02-28 12:58:41 +010017 ethernet0 = &fec;
Shawn Guoe29fe212013-05-03 11:26:30 +080018 gpio0 = &gpio1;
19 gpio1 = &gpio2;
20 gpio2 = &gpio3;
21 gpio3 = &gpio4;
22 gpio4 = &gpio5;
Fabio Estevam640a7f32013-09-13 18:13:00 -030023 serial0 = &uart1;
24 serial1 = &uart2;
25 serial2 = &uart3;
26 serial3 = &uart4;
27 serial4 = &uart5;
28 spi0 = &ecspi1;
29 spi1 = &ecspi2;
30 spi2 = &ecspi3;
31 spi3 = &ecspi4;
Peter Chen8189c512013-12-20 15:52:05 +080032 usbphy0 = &usbphy1;
33 usbphy1 = &usbphy2;
Shawn Guoe29fe212013-05-03 11:26:30 +080034 };
35
36 cpus {
37 #address-cells = <1>;
38 #size-cells = <0>;
39
40 cpu@0 {
41 compatible = "arm,cortex-a9";
42 device_type = "cpu";
43 reg = <0x0>;
44 next-level-cache = <&L2>;
John Tobiasb0d300d2013-12-19 12:35:36 -080045 operating-points = <
46 /* kHz uV */
47 996000 1275000
48 792000 1175000
49 396000 975000
50 >;
51 fsl,soc-operating-points = <
52 /* ARM kHz SOC-PU uV */
53 996000 1225000
54 792000 1175000
55 396000 1175000
56 >;
57 clock-latency = <61036>; /* two CLK32 periods */
58 clocks = <&clks IMX6SL_CLK_ARM>, <&clks IMX6SL_CLK_PLL2_PFD2>,
59 <&clks IMX6SL_CLK_STEP>, <&clks IMX6SL_CLK_PLL1_SW>,
60 <&clks IMX6SL_CLK_PLL1_SYS>;
61 clock-names = "arm", "pll2_pfd2_396m", "step",
62 "pll1_sw", "pll1_sys";
63 arm-supply = <&reg_arm>;
64 pu-supply = <&reg_pu>;
65 soc-supply = <&reg_soc>;
Shawn Guoe29fe212013-05-03 11:26:30 +080066 };
67 };
68
69 intc: interrupt-controller@00a01000 {
70 compatible = "arm,cortex-a9-gic";
71 #interrupt-cells = <3>;
Shawn Guoe29fe212013-05-03 11:26:30 +080072 interrupt-controller;
73 reg = <0x00a01000 0x1000>,
74 <0x00a00100 0x100>;
75 };
76
77 clocks {
78 #address-cells = <1>;
79 #size-cells = <0>;
80
81 ckil {
82 compatible = "fixed-clock";
Shawn Guo4b2b4042014-04-11 09:56:46 +080083 #clock-cells = <0>;
Shawn Guoe29fe212013-05-03 11:26:30 +080084 clock-frequency = <32768>;
85 };
86
87 osc {
88 compatible = "fixed-clock";
Shawn Guo4b2b4042014-04-11 09:56:46 +080089 #clock-cells = <0>;
Shawn Guoe29fe212013-05-03 11:26:30 +080090 clock-frequency = <24000000>;
91 };
92 };
93
94 soc {
95 #address-cells = <1>;
96 #size-cells = <1>;
97 compatible = "simple-bus";
98 interrupt-parent = <&intc>;
99 ranges;
100
Anson Huang248f15a2014-01-06 15:57:37 -0500101 ocram: sram@00900000 {
102 compatible = "mmio-sram";
103 reg = <0x00900000 0x20000>;
104 clocks = <&clks IMX6SL_CLK_OCRAM>;
105 };
106
Shawn Guoe29fe212013-05-03 11:26:30 +0800107 L2: l2-cache@00a02000 {
108 compatible = "arm,pl310-cache";
109 reg = <0x00a02000 0x1000>;
Troy Kisky13088c22013-11-14 14:02:12 -0700110 interrupts = <0 92 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guoe29fe212013-05-03 11:26:30 +0800111 cache-unified;
112 cache-level = <2>;
113 arm,tag-latency = <4 2 3>;
114 arm,data-latency = <4 2 3>;
115 };
116
117 pmu {
118 compatible = "arm,cortex-a9-pmu";
Troy Kisky13088c22013-11-14 14:02:12 -0700119 interrupts = <0 94 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guoe29fe212013-05-03 11:26:30 +0800120 };
121
122 aips1: aips-bus@02000000 {
123 compatible = "fsl,aips-bus", "simple-bus";
124 #address-cells = <1>;
125 #size-cells = <1>;
126 reg = <0x02000000 0x100000>;
127 ranges;
128
129 spba: spba-bus@02000000 {
130 compatible = "fsl,spba-bus", "simple-bus";
131 #address-cells = <1>;
132 #size-cells = <1>;
133 reg = <0x02000000 0x40000>;
134 ranges;
135
136 spdif: spdif@02004000 {
137 reg = <0x02004000 0x4000>;
Troy Kisky13088c22013-11-14 14:02:12 -0700138 interrupts = <0 52 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guoe29fe212013-05-03 11:26:30 +0800139 };
140
141 ecspi1: ecspi@02008000 {
142 #address-cells = <1>;
143 #size-cells = <0>;
144 compatible = "fsl,imx6sl-ecspi", "fsl,imx51-ecspi";
145 reg = <0x02008000 0x4000>;
Troy Kisky13088c22013-11-14 14:02:12 -0700146 interrupts = <0 31 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guoe29fe212013-05-03 11:26:30 +0800147 clocks = <&clks IMX6SL_CLK_ECSPI1>,
148 <&clks IMX6SL_CLK_ECSPI1>;
149 clock-names = "ipg", "per";
150 status = "disabled";
151 };
152
153 ecspi2: ecspi@0200c000 {
154 #address-cells = <1>;
155 #size-cells = <0>;
156 compatible = "fsl,imx6sl-ecspi", "fsl,imx51-ecspi";
157 reg = <0x0200c000 0x4000>;
Troy Kisky13088c22013-11-14 14:02:12 -0700158 interrupts = <0 32 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guoe29fe212013-05-03 11:26:30 +0800159 clocks = <&clks IMX6SL_CLK_ECSPI2>,
160 <&clks IMX6SL_CLK_ECSPI2>;
161 clock-names = "ipg", "per";
162 status = "disabled";
163 };
164
165 ecspi3: ecspi@02010000 {
166 #address-cells = <1>;
167 #size-cells = <0>;
168 compatible = "fsl,imx6sl-ecspi", "fsl,imx51-ecspi";
169 reg = <0x02010000 0x4000>;
Troy Kisky13088c22013-11-14 14:02:12 -0700170 interrupts = <0 33 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guoe29fe212013-05-03 11:26:30 +0800171 clocks = <&clks IMX6SL_CLK_ECSPI3>,
172 <&clks IMX6SL_CLK_ECSPI3>;
173 clock-names = "ipg", "per";
174 status = "disabled";
175 };
176
177 ecspi4: ecspi@02014000 {
178 #address-cells = <1>;
179 #size-cells = <0>;
180 compatible = "fsl,imx6sl-ecspi", "fsl,imx51-ecspi";
181 reg = <0x02014000 0x4000>;
Troy Kisky13088c22013-11-14 14:02:12 -0700182 interrupts = <0 34 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guoe29fe212013-05-03 11:26:30 +0800183 clocks = <&clks IMX6SL_CLK_ECSPI4>,
184 <&clks IMX6SL_CLK_ECSPI4>;
185 clock-names = "ipg", "per";
186 status = "disabled";
187 };
188
189 uart5: serial@02018000 {
Huang Shijie6eb85f92013-07-08 17:14:19 +0800190 compatible = "fsl,imx6sl-uart",
191 "fsl,imx6q-uart", "fsl,imx21-uart";
Shawn Guoe29fe212013-05-03 11:26:30 +0800192 reg = <0x02018000 0x4000>;
Troy Kisky13088c22013-11-14 14:02:12 -0700193 interrupts = <0 30 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guoe29fe212013-05-03 11:26:30 +0800194 clocks = <&clks IMX6SL_CLK_UART>,
195 <&clks IMX6SL_CLK_UART_SERIAL>;
196 clock-names = "ipg", "per";
Huang Shijie72a5ceb2013-07-12 18:02:09 +0800197 dmas = <&sdma 33 4 0>, <&sdma 34 4 0>;
198 dma-names = "rx", "tx";
Shawn Guoe29fe212013-05-03 11:26:30 +0800199 status = "disabled";
200 };
201
202 uart1: serial@02020000 {
Huang Shijie6eb85f92013-07-08 17:14:19 +0800203 compatible = "fsl,imx6sl-uart",
204 "fsl,imx6q-uart", "fsl,imx21-uart";
Shawn Guoe29fe212013-05-03 11:26:30 +0800205 reg = <0x02020000 0x4000>;
Troy Kisky13088c22013-11-14 14:02:12 -0700206 interrupts = <0 26 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guoe29fe212013-05-03 11:26:30 +0800207 clocks = <&clks IMX6SL_CLK_UART>,
208 <&clks IMX6SL_CLK_UART_SERIAL>;
209 clock-names = "ipg", "per";
Huang Shijie72a5ceb2013-07-12 18:02:09 +0800210 dmas = <&sdma 25 4 0>, <&sdma 26 4 0>;
211 dma-names = "rx", "tx";
Shawn Guoe29fe212013-05-03 11:26:30 +0800212 status = "disabled";
213 };
214
215 uart2: serial@02024000 {
Huang Shijie6eb85f92013-07-08 17:14:19 +0800216 compatible = "fsl,imx6sl-uart",
217 "fsl,imx6q-uart", "fsl,imx21-uart";
Shawn Guoe29fe212013-05-03 11:26:30 +0800218 reg = <0x02024000 0x4000>;
Troy Kisky13088c22013-11-14 14:02:12 -0700219 interrupts = <0 27 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guoe29fe212013-05-03 11:26:30 +0800220 clocks = <&clks IMX6SL_CLK_UART>,
221 <&clks IMX6SL_CLK_UART_SERIAL>;
222 clock-names = "ipg", "per";
Huang Shijie72a5ceb2013-07-12 18:02:09 +0800223 dmas = <&sdma 27 4 0>, <&sdma 28 4 0>;
224 dma-names = "rx", "tx";
Shawn Guoe29fe212013-05-03 11:26:30 +0800225 status = "disabled";
226 };
227
228 ssi1: ssi@02028000 {
Alexander Shiyan6ff7f512014-08-19 20:00:09 +0400229 #sound-dai-cells = <0>;
Markus Pargmann98ea6ad2014-01-17 10:07:42 +0100230 compatible = "fsl,imx6sl-ssi",
Fabio Estevam4c035272014-07-07 10:04:52 -0300231 "fsl,imx51-ssi";
Shawn Guoe29fe212013-05-03 11:26:30 +0800232 reg = <0x02028000 0x4000>;
Troy Kisky13088c22013-11-14 14:02:12 -0700233 interrupts = <0 46 IRQ_TYPE_LEVEL_HIGH>;
Shengjiu Wang50a88352014-09-09 17:13:27 +0800234 clocks = <&clks IMX6SL_CLK_SSI1_IPG>,
235 <&clks IMX6SL_CLK_SSI1>;
236 clock-names = "ipg", "baud";
Shawn Guo5da826a2013-07-17 13:50:54 +0800237 dmas = <&sdma 37 1 0>,
238 <&sdma 38 1 0>;
239 dma-names = "rx", "tx";
Shawn Guoe29fe212013-05-03 11:26:30 +0800240 fsl,fifo-depth = <15>;
241 status = "disabled";
242 };
243
244 ssi2: ssi@0202c000 {
Alexander Shiyan6ff7f512014-08-19 20:00:09 +0400245 #sound-dai-cells = <0>;
Markus Pargmann98ea6ad2014-01-17 10:07:42 +0100246 compatible = "fsl,imx6sl-ssi",
Fabio Estevam4c035272014-07-07 10:04:52 -0300247 "fsl,imx51-ssi";
Shawn Guoe29fe212013-05-03 11:26:30 +0800248 reg = <0x0202c000 0x4000>;
Troy Kisky13088c22013-11-14 14:02:12 -0700249 interrupts = <0 47 IRQ_TYPE_LEVEL_HIGH>;
Shengjiu Wang50a88352014-09-09 17:13:27 +0800250 clocks = <&clks IMX6SL_CLK_SSI2_IPG>,
251 <&clks IMX6SL_CLK_SSI2>;
252 clock-names = "ipg", "baud";
Shawn Guo5da826a2013-07-17 13:50:54 +0800253 dmas = <&sdma 41 1 0>,
254 <&sdma 42 1 0>;
255 dma-names = "rx", "tx";
Shawn Guoe29fe212013-05-03 11:26:30 +0800256 fsl,fifo-depth = <15>;
257 status = "disabled";
258 };
259
260 ssi3: ssi@02030000 {
Alexander Shiyan6ff7f512014-08-19 20:00:09 +0400261 #sound-dai-cells = <0>;
Markus Pargmann98ea6ad2014-01-17 10:07:42 +0100262 compatible = "fsl,imx6sl-ssi",
Fabio Estevam4c035272014-07-07 10:04:52 -0300263 "fsl,imx51-ssi";
Shawn Guoe29fe212013-05-03 11:26:30 +0800264 reg = <0x02030000 0x4000>;
Troy Kisky13088c22013-11-14 14:02:12 -0700265 interrupts = <0 48 IRQ_TYPE_LEVEL_HIGH>;
Shengjiu Wang50a88352014-09-09 17:13:27 +0800266 clocks = <&clks IMX6SL_CLK_SSI3_IPG>,
267 <&clks IMX6SL_CLK_SSI3>;
268 clock-names = "ipg", "baud";
Shawn Guo5da826a2013-07-17 13:50:54 +0800269 dmas = <&sdma 45 1 0>,
270 <&sdma 46 1 0>;
271 dma-names = "rx", "tx";
Shawn Guoe29fe212013-05-03 11:26:30 +0800272 fsl,fifo-depth = <15>;
273 status = "disabled";
274 };
275
276 uart3: serial@02034000 {
Huang Shijie6eb85f92013-07-08 17:14:19 +0800277 compatible = "fsl,imx6sl-uart",
278 "fsl,imx6q-uart", "fsl,imx21-uart";
Shawn Guoe29fe212013-05-03 11:26:30 +0800279 reg = <0x02034000 0x4000>;
Troy Kisky13088c22013-11-14 14:02:12 -0700280 interrupts = <0 28 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guoe29fe212013-05-03 11:26:30 +0800281 clocks = <&clks IMX6SL_CLK_UART>,
282 <&clks IMX6SL_CLK_UART_SERIAL>;
283 clock-names = "ipg", "per";
Huang Shijie72a5ceb2013-07-12 18:02:09 +0800284 dmas = <&sdma 29 4 0>, <&sdma 30 4 0>;
285 dma-names = "rx", "tx";
Shawn Guoe29fe212013-05-03 11:26:30 +0800286 status = "disabled";
287 };
288
289 uart4: serial@02038000 {
Huang Shijie6eb85f92013-07-08 17:14:19 +0800290 compatible = "fsl,imx6sl-uart",
291 "fsl,imx6q-uart", "fsl,imx21-uart";
Shawn Guoe29fe212013-05-03 11:26:30 +0800292 reg = <0x02038000 0x4000>;
Troy Kisky13088c22013-11-14 14:02:12 -0700293 interrupts = <0 29 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guoe29fe212013-05-03 11:26:30 +0800294 clocks = <&clks IMX6SL_CLK_UART>,
295 <&clks IMX6SL_CLK_UART_SERIAL>;
296 clock-names = "ipg", "per";
Huang Shijie72a5ceb2013-07-12 18:02:09 +0800297 dmas = <&sdma 31 4 0>, <&sdma 32 4 0>;
298 dma-names = "rx", "tx";
Shawn Guoe29fe212013-05-03 11:26:30 +0800299 status = "disabled";
300 };
301 };
302
303 pwm1: pwm@02080000 {
304 #pwm-cells = <2>;
305 compatible = "fsl,imx6sl-pwm", "fsl,imx27-pwm";
306 reg = <0x02080000 0x4000>;
Troy Kisky13088c22013-11-14 14:02:12 -0700307 interrupts = <0 83 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guoe29fe212013-05-03 11:26:30 +0800308 clocks = <&clks IMX6SL_CLK_PWM1>,
309 <&clks IMX6SL_CLK_PWM1>;
310 clock-names = "ipg", "per";
311 };
312
313 pwm2: pwm@02084000 {
314 #pwm-cells = <2>;
315 compatible = "fsl,imx6sl-pwm", "fsl,imx27-pwm";
316 reg = <0x02084000 0x4000>;
Troy Kisky13088c22013-11-14 14:02:12 -0700317 interrupts = <0 84 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guoe29fe212013-05-03 11:26:30 +0800318 clocks = <&clks IMX6SL_CLK_PWM2>,
319 <&clks IMX6SL_CLK_PWM2>;
320 clock-names = "ipg", "per";
321 };
322
323 pwm3: pwm@02088000 {
324 #pwm-cells = <2>;
325 compatible = "fsl,imx6sl-pwm", "fsl,imx27-pwm";
326 reg = <0x02088000 0x4000>;
Troy Kisky13088c22013-11-14 14:02:12 -0700327 interrupts = <0 85 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guoe29fe212013-05-03 11:26:30 +0800328 clocks = <&clks IMX6SL_CLK_PWM3>,
329 <&clks IMX6SL_CLK_PWM3>;
330 clock-names = "ipg", "per";
331 };
332
333 pwm4: pwm@0208c000 {
334 #pwm-cells = <2>;
335 compatible = "fsl,imx6sl-pwm", "fsl,imx27-pwm";
336 reg = <0x0208c000 0x4000>;
Troy Kisky13088c22013-11-14 14:02:12 -0700337 interrupts = <0 86 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guoe29fe212013-05-03 11:26:30 +0800338 clocks = <&clks IMX6SL_CLK_PWM4>,
339 <&clks IMX6SL_CLK_PWM4>;
340 clock-names = "ipg", "per";
341 };
342
343 gpt: gpt@02098000 {
344 compatible = "fsl,imx6sl-gpt";
345 reg = <0x02098000 0x4000>;
Troy Kisky13088c22013-11-14 14:02:12 -0700346 interrupts = <0 55 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guoe29fe212013-05-03 11:26:30 +0800347 clocks = <&clks IMX6SL_CLK_GPT>,
348 <&clks IMX6SL_CLK_GPT_SERIAL>;
349 clock-names = "ipg", "per";
350 };
351
352 gpio1: gpio@0209c000 {
353 compatible = "fsl,imx6sl-gpio", "fsl,imx35-gpio";
354 reg = <0x0209c000 0x4000>;
Troy Kisky13088c22013-11-14 14:02:12 -0700355 interrupts = <0 66 IRQ_TYPE_LEVEL_HIGH>,
356 <0 67 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guoe29fe212013-05-03 11:26:30 +0800357 gpio-controller;
358 #gpio-cells = <2>;
359 interrupt-controller;
360 #interrupt-cells = <2>;
361 };
362
363 gpio2: gpio@020a0000 {
364 compatible = "fsl,imx6sl-gpio", "fsl,imx35-gpio";
365 reg = <0x020a0000 0x4000>;
Troy Kisky13088c22013-11-14 14:02:12 -0700366 interrupts = <0 68 IRQ_TYPE_LEVEL_HIGH>,
367 <0 69 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guoe29fe212013-05-03 11:26:30 +0800368 gpio-controller;
369 #gpio-cells = <2>;
370 interrupt-controller;
371 #interrupt-cells = <2>;
372 };
373
374 gpio3: gpio@020a4000 {
375 compatible = "fsl,imx6sl-gpio", "fsl,imx35-gpio";
376 reg = <0x020a4000 0x4000>;
Troy Kisky13088c22013-11-14 14:02:12 -0700377 interrupts = <0 70 IRQ_TYPE_LEVEL_HIGH>,
378 <0 71 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guoe29fe212013-05-03 11:26:30 +0800379 gpio-controller;
380 #gpio-cells = <2>;
381 interrupt-controller;
382 #interrupt-cells = <2>;
383 };
384
385 gpio4: gpio@020a8000 {
386 compatible = "fsl,imx6sl-gpio", "fsl,imx35-gpio";
387 reg = <0x020a8000 0x4000>;
Troy Kisky13088c22013-11-14 14:02:12 -0700388 interrupts = <0 72 IRQ_TYPE_LEVEL_HIGH>,
389 <0 73 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guoe29fe212013-05-03 11:26:30 +0800390 gpio-controller;
391 #gpio-cells = <2>;
392 interrupt-controller;
393 #interrupt-cells = <2>;
394 };
395
396 gpio5: gpio@020ac000 {
397 compatible = "fsl,imx6sl-gpio", "fsl,imx35-gpio";
398 reg = <0x020ac000 0x4000>;
Troy Kisky13088c22013-11-14 14:02:12 -0700399 interrupts = <0 74 IRQ_TYPE_LEVEL_HIGH>,
400 <0 75 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guoe29fe212013-05-03 11:26:30 +0800401 gpio-controller;
402 #gpio-cells = <2>;
403 interrupt-controller;
404 #interrupt-cells = <2>;
405 };
406
407 kpp: kpp@020b8000 {
Anson Huang4291b642014-01-14 17:30:28 +0800408 compatible = "fsl,imx6sl-kpp", "fsl,imx21-kpp";
Shawn Guoe29fe212013-05-03 11:26:30 +0800409 reg = <0x020b8000 0x4000>;
Troy Kisky13088c22013-11-14 14:02:12 -0700410 interrupts = <0 82 IRQ_TYPE_LEVEL_HIGH>;
Anson Huang4291b642014-01-14 17:30:28 +0800411 clocks = <&clks IMX6SL_CLK_DUMMY>;
Fabio Estevam1b6f2362014-06-24 21:13:44 -0300412 status = "disabled";
Shawn Guoe29fe212013-05-03 11:26:30 +0800413 };
414
415 wdog1: wdog@020bc000 {
416 compatible = "fsl,imx6sl-wdt", "fsl,imx21-wdt";
417 reg = <0x020bc000 0x4000>;
Troy Kisky13088c22013-11-14 14:02:12 -0700418 interrupts = <0 80 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guoe29fe212013-05-03 11:26:30 +0800419 clocks = <&clks IMX6SL_CLK_DUMMY>;
420 };
421
422 wdog2: wdog@020c0000 {
423 compatible = "fsl,imx6sl-wdt", "fsl,imx21-wdt";
424 reg = <0x020c0000 0x4000>;
Troy Kisky13088c22013-11-14 14:02:12 -0700425 interrupts = <0 81 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guoe29fe212013-05-03 11:26:30 +0800426 clocks = <&clks IMX6SL_CLK_DUMMY>;
427 status = "disabled";
428 };
429
430 clks: ccm@020c4000 {
431 compatible = "fsl,imx6sl-ccm";
432 reg = <0x020c4000 0x4000>;
Troy Kisky13088c22013-11-14 14:02:12 -0700433 interrupts = <0 87 IRQ_TYPE_LEVEL_HIGH>,
434 <0 88 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guoe29fe212013-05-03 11:26:30 +0800435 #clock-cells = <1>;
436 };
437
438 anatop: anatop@020c8000 {
Shawn Guod8ce8232013-08-13 16:54:05 +0800439 compatible = "fsl,imx6sl-anatop",
440 "fsl,imx6q-anatop",
441 "syscon", "simple-bus";
Shawn Guoe29fe212013-05-03 11:26:30 +0800442 reg = <0x020c8000 0x1000>;
Troy Kisky13088c22013-11-14 14:02:12 -0700443 interrupts = <0 49 IRQ_TYPE_LEVEL_HIGH>,
444 <0 54 IRQ_TYPE_LEVEL_HIGH>,
445 <0 127 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guoe29fe212013-05-03 11:26:30 +0800446
447 regulator-1p1@110 {
448 compatible = "fsl,anatop-regulator";
449 regulator-name = "vdd1p1";
450 regulator-min-microvolt = <800000>;
451 regulator-max-microvolt = <1375000>;
452 regulator-always-on;
453 anatop-reg-offset = <0x110>;
454 anatop-vol-bit-shift = <8>;
455 anatop-vol-bit-width = <5>;
456 anatop-min-bit-val = <4>;
457 anatop-min-voltage = <800000>;
458 anatop-max-voltage = <1375000>;
459 };
460
461 regulator-3p0@120 {
462 compatible = "fsl,anatop-regulator";
463 regulator-name = "vdd3p0";
464 regulator-min-microvolt = <2800000>;
465 regulator-max-microvolt = <3150000>;
466 regulator-always-on;
467 anatop-reg-offset = <0x120>;
468 anatop-vol-bit-shift = <8>;
469 anatop-vol-bit-width = <5>;
470 anatop-min-bit-val = <0>;
471 anatop-min-voltage = <2625000>;
472 anatop-max-voltage = <3400000>;
473 };
474
475 regulator-2p5@130 {
476 compatible = "fsl,anatop-regulator";
477 regulator-name = "vdd2p5";
478 regulator-min-microvolt = <2100000>;
479 regulator-max-microvolt = <2850000>;
480 regulator-always-on;
481 anatop-reg-offset = <0x130>;
482 anatop-vol-bit-shift = <8>;
483 anatop-vol-bit-width = <5>;
484 anatop-min-bit-val = <0>;
485 anatop-min-voltage = <2100000>;
486 anatop-max-voltage = <2850000>;
487 };
488
489 reg_arm: regulator-vddcore@140 {
490 compatible = "fsl,anatop-regulator";
Fabio Estevam118c98a2013-12-19 21:08:52 -0200491 regulator-name = "vddarm";
Shawn Guoe29fe212013-05-03 11:26:30 +0800492 regulator-min-microvolt = <725000>;
493 regulator-max-microvolt = <1450000>;
494 regulator-always-on;
495 anatop-reg-offset = <0x140>;
496 anatop-vol-bit-shift = <0>;
497 anatop-vol-bit-width = <5>;
498 anatop-delay-reg-offset = <0x170>;
499 anatop-delay-bit-shift = <24>;
500 anatop-delay-bit-width = <2>;
501 anatop-min-bit-val = <1>;
502 anatop-min-voltage = <725000>;
503 anatop-max-voltage = <1450000>;
504 };
505
506 reg_pu: regulator-vddpu@140 {
507 compatible = "fsl,anatop-regulator";
508 regulator-name = "vddpu";
509 regulator-min-microvolt = <725000>;
510 regulator-max-microvolt = <1450000>;
511 regulator-always-on;
512 anatop-reg-offset = <0x140>;
513 anatop-vol-bit-shift = <9>;
514 anatop-vol-bit-width = <5>;
515 anatop-delay-reg-offset = <0x170>;
516 anatop-delay-bit-shift = <26>;
517 anatop-delay-bit-width = <2>;
518 anatop-min-bit-val = <1>;
519 anatop-min-voltage = <725000>;
520 anatop-max-voltage = <1450000>;
521 };
522
523 reg_soc: regulator-vddsoc@140 {
524 compatible = "fsl,anatop-regulator";
525 regulator-name = "vddsoc";
526 regulator-min-microvolt = <725000>;
527 regulator-max-microvolt = <1450000>;
528 regulator-always-on;
529 anatop-reg-offset = <0x140>;
530 anatop-vol-bit-shift = <18>;
531 anatop-vol-bit-width = <5>;
532 anatop-delay-reg-offset = <0x170>;
533 anatop-delay-bit-shift = <28>;
534 anatop-delay-bit-width = <2>;
535 anatop-min-bit-val = <1>;
536 anatop-min-voltage = <725000>;
537 anatop-max-voltage = <1450000>;
538 };
539 };
540
Anson Huang2998b332014-08-05 17:34:52 +0800541 tempmon: tempmon {
542 compatible = "fsl,imx6q-tempmon";
543 interrupts = <0 49 IRQ_TYPE_LEVEL_HIGH>;
544 fsl,tempmon = <&anatop>;
545 fsl,tempmon-data = <&ocotp>;
546 clocks = <&clks IMX6SL_CLK_PLL3_USB_OTG>;
547 };
548
Shawn Guoe29fe212013-05-03 11:26:30 +0800549 usbphy1: usbphy@020c9000 {
550 compatible = "fsl,imx6sl-usbphy", "fsl,imx23-usbphy";
551 reg = <0x020c9000 0x1000>;
Troy Kisky13088c22013-11-14 14:02:12 -0700552 interrupts = <0 44 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guoe29fe212013-05-03 11:26:30 +0800553 clocks = <&clks IMX6SL_CLK_USBPHY1>;
Peter Chen76a38852013-12-20 15:52:01 +0800554 fsl,anatop = <&anatop>;
Shawn Guoe29fe212013-05-03 11:26:30 +0800555 };
556
557 usbphy2: usbphy@020ca000 {
558 compatible = "fsl,imx6sl-usbphy", "fsl,imx23-usbphy";
559 reg = <0x020ca000 0x1000>;
Troy Kisky13088c22013-11-14 14:02:12 -0700560 interrupts = <0 45 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guoe29fe212013-05-03 11:26:30 +0800561 clocks = <&clks IMX6SL_CLK_USBPHY2>;
Peter Chen76a38852013-12-20 15:52:01 +0800562 fsl,anatop = <&anatop>;
Shawn Guoe29fe212013-05-03 11:26:30 +0800563 };
564
565 snvs@020cc000 {
566 compatible = "fsl,sec-v4.0-mon", "simple-bus";
567 #address-cells = <1>;
568 #size-cells = <1>;
569 ranges = <0 0x020cc000 0x4000>;
570
571 snvs-rtc-lp@34 {
572 compatible = "fsl,sec-v4.0-mon-rtc-lp";
573 reg = <0x34 0x58>;
Troy Kisky13088c22013-11-14 14:02:12 -0700574 interrupts = <0 19 IRQ_TYPE_LEVEL_HIGH>,
575 <0 20 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guoe29fe212013-05-03 11:26:30 +0800576 };
Robin Gong422b0672014-11-12 16:20:37 +0800577
578 snvs_poweroff: snvs-poweroff@38 {
579 compatible = "fsl,sec-v4.0-poweroff";
580 reg = <0x38 0x4>;
581 status = "disabled";
582 };
Shawn Guoe29fe212013-05-03 11:26:30 +0800583 };
584
585 epit1: epit@020d0000 {
586 reg = <0x020d0000 0x4000>;
Troy Kisky13088c22013-11-14 14:02:12 -0700587 interrupts = <0 56 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guoe29fe212013-05-03 11:26:30 +0800588 };
589
590 epit2: epit@020d4000 {
591 reg = <0x020d4000 0x4000>;
Troy Kisky13088c22013-11-14 14:02:12 -0700592 interrupts = <0 57 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guoe29fe212013-05-03 11:26:30 +0800593 };
594
595 src: src@020d8000 {
596 compatible = "fsl,imx6sl-src", "fsl,imx51-src";
597 reg = <0x020d8000 0x4000>;
Troy Kisky13088c22013-11-14 14:02:12 -0700598 interrupts = <0 91 IRQ_TYPE_LEVEL_HIGH>,
599 <0 96 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guoe29fe212013-05-03 11:26:30 +0800600 #reset-cells = <1>;
601 };
602
603 gpc: gpc@020dc000 {
604 compatible = "fsl,imx6sl-gpc", "fsl,imx6q-gpc";
605 reg = <0x020dc000 0x4000>;
Troy Kisky13088c22013-11-14 14:02:12 -0700606 interrupts = <0 89 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guoe29fe212013-05-03 11:26:30 +0800607 };
608
Fugang Duane03d10f2013-09-03 12:26:22 +0800609 gpr: iomuxc-gpr@020e0000 {
Shawn Guo5f7adc92013-10-18 23:27:37 +0800610 compatible = "fsl,imx6sl-iomuxc-gpr",
611 "fsl,imx6q-iomuxc-gpr", "syscon";
Fugang Duane03d10f2013-09-03 12:26:22 +0800612 reg = <0x020e0000 0x38>;
613 };
614
Shawn Guoe29fe212013-05-03 11:26:30 +0800615 iomuxc: iomuxc@020e0000 {
616 compatible = "fsl,imx6sl-iomuxc";
617 reg = <0x020e0000 0x4000>;
Shawn Guoe29fe212013-05-03 11:26:30 +0800618 };
619
620 csi: csi@020e4000 {
621 reg = <0x020e4000 0x4000>;
Troy Kisky13088c22013-11-14 14:02:12 -0700622 interrupts = <0 7 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guoe29fe212013-05-03 11:26:30 +0800623 };
624
625 spdc: spdc@020e8000 {
626 reg = <0x020e8000 0x4000>;
Troy Kisky13088c22013-11-14 14:02:12 -0700627 interrupts = <0 6 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guoe29fe212013-05-03 11:26:30 +0800628 };
629
630 sdma: sdma@020ec000 {
Shawn Guo811e76852014-07-04 14:30:27 +0800631 compatible = "fsl,imx6sl-sdma", "fsl,imx6q-sdma";
Shawn Guoe29fe212013-05-03 11:26:30 +0800632 reg = <0x020ec000 0x4000>;
Troy Kisky13088c22013-11-14 14:02:12 -0700633 interrupts = <0 2 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guoe29fe212013-05-03 11:26:30 +0800634 clocks = <&clks IMX6SL_CLK_SDMA>,
635 <&clks IMX6SL_CLK_SDMA>;
636 clock-names = "ipg", "ahb";
Huang Shijiefb72bb22013-07-02 10:15:29 +0800637 #dma-cells = <3>;
Shawn Guo44a26872013-08-13 08:55:02 +0800638 /* imx6sl reuses imx6q sdma firmware */
639 fsl,sdma-ram-script-name = "imx/sdma/sdma-imx6q.bin";
Shawn Guoe29fe212013-05-03 11:26:30 +0800640 };
641
642 pxp: pxp@020f0000 {
643 reg = <0x020f0000 0x4000>;
Troy Kisky13088c22013-11-14 14:02:12 -0700644 interrupts = <0 98 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guoe29fe212013-05-03 11:26:30 +0800645 };
646
647 epdc: epdc@020f4000 {
648 reg = <0x020f4000 0x4000>;
Troy Kisky13088c22013-11-14 14:02:12 -0700649 interrupts = <0 97 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guoe29fe212013-05-03 11:26:30 +0800650 };
651
652 lcdif: lcdif@020f8000 {
Fabio Estevame99b0772014-08-19 15:21:14 -0300653 compatible = "fsl,imx6sl-lcdif", "fsl,imx28-lcdif";
Shawn Guoe29fe212013-05-03 11:26:30 +0800654 reg = <0x020f8000 0x4000>;
Troy Kisky13088c22013-11-14 14:02:12 -0700655 interrupts = <0 39 IRQ_TYPE_LEVEL_HIGH>;
Fabio Estevame99b0772014-08-19 15:21:14 -0300656 clocks = <&clks IMX6SL_CLK_LCDIF_PIX>,
657 <&clks IMX6SL_CLK_LCDIF_AXI>,
658 <&clks IMX6SL_CLK_DUMMY>;
659 clock-names = "pix", "axi", "disp_axi";
660 status = "disabled";
Shawn Guoe29fe212013-05-03 11:26:30 +0800661 };
662
663 dcp: dcp@020fc000 {
664 reg = <0x020fc000 0x4000>;
Troy Kisky13088c22013-11-14 14:02:12 -0700665 interrupts = <0 99 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guoe29fe212013-05-03 11:26:30 +0800666 };
667 };
668
669 aips2: aips-bus@02100000 {
670 compatible = "fsl,aips-bus", "simple-bus";
671 #address-cells = <1>;
672 #size-cells = <1>;
673 reg = <0x02100000 0x100000>;
674 ranges;
675
676 usbotg1: usb@02184000 {
677 compatible = "fsl,imx6sl-usb", "fsl,imx27-usb";
678 reg = <0x02184000 0x200>;
Troy Kisky13088c22013-11-14 14:02:12 -0700679 interrupts = <0 43 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guoe29fe212013-05-03 11:26:30 +0800680 clocks = <&clks IMX6SL_CLK_USBOH3>;
681 fsl,usbphy = <&usbphy1>;
682 fsl,usbmisc = <&usbmisc 0>;
683 status = "disabled";
684 };
685
686 usbotg2: usb@02184200 {
687 compatible = "fsl,imx6sl-usb", "fsl,imx27-usb";
688 reg = <0x02184200 0x200>;
Troy Kisky13088c22013-11-14 14:02:12 -0700689 interrupts = <0 42 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guoe29fe212013-05-03 11:26:30 +0800690 clocks = <&clks IMX6SL_CLK_USBOH3>;
691 fsl,usbphy = <&usbphy2>;
692 fsl,usbmisc = <&usbmisc 1>;
693 status = "disabled";
694 };
695
696 usbh: usb@02184400 {
697 compatible = "fsl,imx6sl-usb", "fsl,imx27-usb";
698 reg = <0x02184400 0x200>;
Troy Kisky13088c22013-11-14 14:02:12 -0700699 interrupts = <0 40 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guoe29fe212013-05-03 11:26:30 +0800700 clocks = <&clks IMX6SL_CLK_USBOH3>;
701 fsl,usbmisc = <&usbmisc 2>;
702 status = "disabled";
703 };
704
705 usbmisc: usbmisc@02184800 {
706 #index-cells = <1>;
707 compatible = "fsl,imx6sl-usbmisc", "fsl,imx6q-usbmisc";
708 reg = <0x02184800 0x200>;
709 clocks = <&clks IMX6SL_CLK_USBOH3>;
710 };
711
712 fec: ethernet@02188000 {
713 compatible = "fsl,imx6sl-fec", "fsl,imx25-fec";
714 reg = <0x02188000 0x4000>;
Troy Kisky13088c22013-11-14 14:02:12 -0700715 interrupts = <0 114 IRQ_TYPE_LEVEL_HIGH>;
Fugang Duan8c562a12014-05-19 15:46:56 +0800716 clocks = <&clks IMX6SL_CLK_ENET>,
Shawn Guoe29fe212013-05-03 11:26:30 +0800717 <&clks IMX6SL_CLK_ENET_REF>;
718 clock-names = "ipg", "ahb";
719 status = "disabled";
720 };
721
722 usdhc1: usdhc@02190000 {
723 compatible = "fsl,imx6sl-usdhc", "fsl,imx6q-usdhc";
724 reg = <0x02190000 0x4000>;
Troy Kisky13088c22013-11-14 14:02:12 -0700725 interrupts = <0 22 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guoe29fe212013-05-03 11:26:30 +0800726 clocks = <&clks IMX6SL_CLK_USDHC1>,
727 <&clks IMX6SL_CLK_USDHC1>,
728 <&clks IMX6SL_CLK_USDHC1>;
729 clock-names = "ipg", "ahb", "per";
730 bus-width = <4>;
731 status = "disabled";
732 };
733
734 usdhc2: usdhc@02194000 {
735 compatible = "fsl,imx6sl-usdhc", "fsl,imx6q-usdhc";
736 reg = <0x02194000 0x4000>;
Troy Kisky13088c22013-11-14 14:02:12 -0700737 interrupts = <0 23 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guoe29fe212013-05-03 11:26:30 +0800738 clocks = <&clks IMX6SL_CLK_USDHC2>,
739 <&clks IMX6SL_CLK_USDHC2>,
740 <&clks IMX6SL_CLK_USDHC2>;
741 clock-names = "ipg", "ahb", "per";
742 bus-width = <4>;
743 status = "disabled";
744 };
745
746 usdhc3: usdhc@02198000 {
747 compatible = "fsl,imx6sl-usdhc", "fsl,imx6q-usdhc";
748 reg = <0x02198000 0x4000>;
Troy Kisky13088c22013-11-14 14:02:12 -0700749 interrupts = <0 24 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guoe29fe212013-05-03 11:26:30 +0800750 clocks = <&clks IMX6SL_CLK_USDHC3>,
751 <&clks IMX6SL_CLK_USDHC3>,
752 <&clks IMX6SL_CLK_USDHC3>;
753 clock-names = "ipg", "ahb", "per";
754 bus-width = <4>;
755 status = "disabled";
756 };
757
758 usdhc4: usdhc@0219c000 {
759 compatible = "fsl,imx6sl-usdhc", "fsl,imx6q-usdhc";
760 reg = <0x0219c000 0x4000>;
Troy Kisky13088c22013-11-14 14:02:12 -0700761 interrupts = <0 25 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guoe29fe212013-05-03 11:26:30 +0800762 clocks = <&clks IMX6SL_CLK_USDHC4>,
763 <&clks IMX6SL_CLK_USDHC4>,
764 <&clks IMX6SL_CLK_USDHC4>;
765 clock-names = "ipg", "ahb", "per";
766 bus-width = <4>;
767 status = "disabled";
768 };
769
770 i2c1: i2c@021a0000 {
771 #address-cells = <1>;
772 #size-cells = <0>;
773 compatible = "fsl,imx6sl-i2c", "fsl,imx21-i2c";
774 reg = <0x021a0000 0x4000>;
Troy Kisky13088c22013-11-14 14:02:12 -0700775 interrupts = <0 36 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guoe29fe212013-05-03 11:26:30 +0800776 clocks = <&clks IMX6SL_CLK_I2C1>;
777 status = "disabled";
778 };
779
780 i2c2: i2c@021a4000 {
781 #address-cells = <1>;
782 #size-cells = <0>;
783 compatible = "fsl,imx6sl-i2c", "fsl,imx21-i2c";
784 reg = <0x021a4000 0x4000>;
Troy Kisky13088c22013-11-14 14:02:12 -0700785 interrupts = <0 37 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guoe29fe212013-05-03 11:26:30 +0800786 clocks = <&clks IMX6SL_CLK_I2C2>;
787 status = "disabled";
788 };
789
790 i2c3: i2c@021a8000 {
791 #address-cells = <1>;
792 #size-cells = <0>;
793 compatible = "fsl,imx6sl-i2c", "fsl,imx21-i2c";
794 reg = <0x021a8000 0x4000>;
Troy Kisky13088c22013-11-14 14:02:12 -0700795 interrupts = <0 38 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guoe29fe212013-05-03 11:26:30 +0800796 clocks = <&clks IMX6SL_CLK_I2C3>;
797 status = "disabled";
798 };
799
800 mmdc: mmdc@021b0000 {
801 compatible = "fsl,imx6sl-mmdc", "fsl,imx6q-mmdc";
802 reg = <0x021b0000 0x4000>;
803 };
804
805 rngb: rngb@021b4000 {
806 reg = <0x021b4000 0x4000>;
Troy Kisky13088c22013-11-14 14:02:12 -0700807 interrupts = <0 5 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guoe29fe212013-05-03 11:26:30 +0800808 };
809
810 weim: weim@021b8000 {
811 reg = <0x021b8000 0x4000>;
Troy Kisky13088c22013-11-14 14:02:12 -0700812 interrupts = <0 14 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guoe29fe212013-05-03 11:26:30 +0800813 };
814
815 ocotp: ocotp@021bc000 {
Anson Huang2998b332014-08-05 17:34:52 +0800816 compatible = "fsl,imx6sl-ocotp", "syscon";
Shawn Guoe29fe212013-05-03 11:26:30 +0800817 reg = <0x021bc000 0x4000>;
818 };
819
820 audmux: audmux@021d8000 {
821 compatible = "fsl,imx6sl-audmux", "fsl,imx31-audmux";
822 reg = <0x021d8000 0x4000>;
823 status = "disabled";
824 };
825 };
826 };
827};