blob: e426faa9c24379bc3b19c3f859c464649c8c220d [file] [log] [blame]
Shawn Guo7d740f82011-09-06 13:53:26 +08001/*
2 * Copyright 2011 Freescale Semiconductor, Inc.
3 * Copyright 2011 Linaro Ltd.
4 *
5 * The code contained herein is licensed under the GNU General Public
6 * License. You may obtain a copy of the GNU General Public License
7 * Version 2 or later at the following locations:
8 *
9 * http://www.opensource.org/licenses/gpl-license.html
10 * http://www.gnu.org/copyleft/gpl.html
11 */
12
Shawn Guo8888f652014-06-15 20:36:50 +080013#include <dt-bindings/clock/imx6qdl-clock.h>
Lucas Stach07134a32014-03-05 14:25:50 +010014#include <dt-bindings/interrupt-controller/arm-gic.h>
15
Shawn Guo7d740f82011-09-06 13:53:26 +080016/ {
Fabio Estevam7f107882016-11-12 13:30:35 -020017 #address-cells = <1>;
18 #size-cells = <1>;
Fabio Estevama971c552017-01-23 14:54:10 -020019 /*
20 * The decompressor and also some bootloaders rely on a
21 * pre-existing /chosen node to be available to insert the
22 * command line and merge other ATAGS info.
23 * Also for U-Boot there must be a pre-existing /memory node.
24 */
25 chosen {};
26 memory { device_type = "memory"; reg = <0 0>; };
Fabio Estevam7f107882016-11-12 13:30:35 -020027
Shawn Guo7d740f82011-09-06 13:53:26 +080028 aliases {
Marek Vasut22970072014-02-28 12:58:41 +010029 ethernet0 = &fec;
Lothar Waßmann5f8fbc22013-12-12 14:27:57 +010030 can0 = &can1;
31 can1 = &can2;
Shawn Guo5230f8f2012-08-05 14:01:28 +080032 gpio0 = &gpio1;
33 gpio1 = &gpio2;
34 gpio2 = &gpio3;
35 gpio3 = &gpio4;
36 gpio4 = &gpio5;
37 gpio5 = &gpio6;
38 gpio6 = &gpio7;
Sascha Hauer80fa0582013-06-25 15:51:57 +020039 i2c0 = &i2c1;
40 i2c1 = &i2c2;
41 i2c2 = &i2c3;
Philipp Zabel41beef32015-12-02 14:42:22 +010042 ipu0 = &ipu1;
Sascha Hauerfb06d652014-01-16 13:44:20 +010043 mmc0 = &usdhc1;
44 mmc1 = &usdhc2;
45 mmc2 = &usdhc3;
46 mmc3 = &usdhc4;
Sascha Hauer80fa0582013-06-25 15:51:57 +020047 serial0 = &uart1;
48 serial1 = &uart2;
49 serial2 = &uart3;
50 serial3 = &uart4;
51 serial4 = &uart5;
52 spi0 = &ecspi1;
53 spi1 = &ecspi2;
54 spi2 = &ecspi3;
55 spi3 = &ecspi4;
Peter Chen8189c512013-12-20 15:52:05 +080056 usbphy0 = &usbphy1;
57 usbphy1 = &usbphy2;
Shawn Guo7d740f82011-09-06 13:53:26 +080058 };
59
Shawn Guo7d740f82011-09-06 13:53:26 +080060 clocks {
61 #address-cells = <1>;
62 #size-cells = <0>;
63
64 ckil {
65 compatible = "fsl,imx-ckil", "fixed-clock";
Shawn Guo4b2b4042014-04-11 09:56:46 +080066 #clock-cells = <0>;
Shawn Guo7d740f82011-09-06 13:53:26 +080067 clock-frequency = <32768>;
68 };
69
70 ckih1 {
71 compatible = "fsl,imx-ckih1", "fixed-clock";
Shawn Guo4b2b4042014-04-11 09:56:46 +080072 #clock-cells = <0>;
Shawn Guo7d740f82011-09-06 13:53:26 +080073 clock-frequency = <0>;
74 };
75
76 osc {
77 compatible = "fsl,imx-osc", "fixed-clock";
Shawn Guo4b2b4042014-04-11 09:56:46 +080078 #clock-cells = <0>;
Shawn Guo7d740f82011-09-06 13:53:26 +080079 clock-frequency = <24000000>;
80 };
81 };
82
83 soc {
84 #address-cells = <1>;
85 #size-cells = <1>;
86 compatible = "simple-bus";
Marc Zyngierb923ff62015-02-23 17:45:18 +000087 interrupt-parent = <&gpc>;
Shawn Guo7d740f82011-09-06 13:53:26 +080088 ranges;
89
Shawn Guof30fb032013-02-25 21:56:56 +080090 dma_apbh: dma-apbh@00110000 {
Huang Shijiee5d0f9f2012-06-06 21:22:57 -040091 compatible = "fsl,imx6q-dma-apbh", "fsl,imx28-dma-apbh";
92 reg = <0x00110000 0x2000>;
Troy Kisky275c08b2013-11-14 14:02:13 -070093 interrupts = <0 13 IRQ_TYPE_LEVEL_HIGH>,
94 <0 13 IRQ_TYPE_LEVEL_HIGH>,
95 <0 13 IRQ_TYPE_LEVEL_HIGH>,
96 <0 13 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guof30fb032013-02-25 21:56:56 +080097 interrupt-names = "gpmi0", "gpmi1", "gpmi2", "gpmi3";
98 #dma-cells = <1>;
99 dma-channels = <4>;
Shawn Guo8888f652014-06-15 20:36:50 +0800100 clocks = <&clks IMX6QDL_CLK_APBH_DMA>;
Huang Shijiee5d0f9f2012-06-06 21:22:57 -0400101 };
102
Shawn Guobe4ccfc2012-12-31 11:32:48 +0800103 gpmi: gpmi-nand@00112000 {
Shawn Guo0e87e042012-08-22 21:36:28 +0800104 compatible = "fsl,imx6q-gpmi-nand";
105 #address-cells = <1>;
106 #size-cells = <1>;
107 reg = <0x00112000 0x2000>, <0x00114000 0x2000>;
108 reg-names = "gpmi-nand", "bch";
Troy Kisky275c08b2013-11-14 14:02:13 -0700109 interrupts = <0 15 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guoc7aa12a2013-07-16 17:13:00 +0800110 interrupt-names = "bch";
Shawn Guo8888f652014-06-15 20:36:50 +0800111 clocks = <&clks IMX6QDL_CLK_GPMI_IO>,
112 <&clks IMX6QDL_CLK_GPMI_APB>,
113 <&clks IMX6QDL_CLK_GPMI_BCH>,
114 <&clks IMX6QDL_CLK_GPMI_BCH_APB>,
115 <&clks IMX6QDL_CLK_PER1_BCH>;
Shawn Guo0e87e042012-08-22 21:36:28 +0800116 clock-names = "gpmi_io", "gpmi_apb", "gpmi_bch",
117 "gpmi_bch_apb", "per1_bch";
Shawn Guof30fb032013-02-25 21:56:56 +0800118 dmas = <&dma_apbh 0>;
119 dma-names = "rx-tx";
Shawn Guo0e87e042012-08-22 21:36:28 +0800120 status = "disabled";
Huang Shijiecf922fa2012-07-01 23:38:46 -0400121 };
122
Lucas Stachac4af822015-04-01 11:26:54 +0200123 hdmi: hdmi@0120000 {
124 #address-cells = <1>;
125 #size-cells = <0>;
126 reg = <0x00120000 0x9000>;
127 interrupts = <0 115 0x04>;
128 gpr = <&gpr>;
129 clocks = <&clks IMX6QDL_CLK_HDMI_IAHB>,
130 <&clks IMX6QDL_CLK_HDMI_ISFR>;
131 clock-names = "iahb", "isfr";
132 status = "disabled";
133
134 port@0 {
135 reg = <0>;
136
137 hdmi_mux_0: endpoint {
138 remote-endpoint = <&ipu1_di0_hdmi>;
139 };
140 };
141
142 port@1 {
143 reg = <1>;
144
145 hdmi_mux_1: endpoint {
146 remote-endpoint = <&ipu1_di1_hdmi>;
147 };
148 };
149 };
150
Lucas Stach419e2022015-12-15 17:30:09 +0100151 gpu_3d: gpu@00130000 {
152 compatible = "vivante,gc";
153 reg = <0x00130000 0x4000>;
154 interrupts = <0 9 IRQ_TYPE_LEVEL_HIGH>;
155 clocks = <&clks IMX6QDL_CLK_GPU3D_AXI>,
156 <&clks IMX6QDL_CLK_GPU3D_CORE>,
157 <&clks IMX6QDL_CLK_GPU3D_SHADER>;
158 clock-names = "bus", "core", "shader";
159 power-domains = <&gpc 1>;
160 };
161
162 gpu_2d: gpu@00134000 {
163 compatible = "vivante,gc";
164 reg = <0x00134000 0x4000>;
165 interrupts = <0 10 IRQ_TYPE_LEVEL_HIGH>;
166 clocks = <&clks IMX6QDL_CLK_GPU2D_AXI>,
167 <&clks IMX6QDL_CLK_GPU2D_CORE>;
168 clock-names = "bus", "core";
169 power-domains = <&gpc 1>;
170 };
171
Shawn Guo7d740f82011-09-06 13:53:26 +0800172 timer@00a00600 {
Marc Zyngier58458e02012-01-10 19:44:19 +0000173 compatible = "arm,cortex-a9-twd-timer";
174 reg = <0x00a00600 0x20>;
175 interrupts = <1 13 0xf01>;
Marc Zyngierb923ff62015-02-23 17:45:18 +0000176 interrupt-parent = <&intc>;
Shawn Guo8888f652014-06-15 20:36:50 +0800177 clocks = <&clks IMX6QDL_CLK_TWD>;
Shawn Guo7d740f82011-09-06 13:53:26 +0800178 };
179
Lucas Stach67157882015-12-02 14:42:55 +0100180 intc: interrupt-controller@00a01000 {
181 compatible = "arm,cortex-a9-gic";
182 #interrupt-cells = <3>;
183 interrupt-controller;
184 reg = <0x00a01000 0x1000>,
185 <0x00a00100 0x100>;
186 interrupt-parent = <&intc>;
187 };
188
Shawn Guo7d740f82011-09-06 13:53:26 +0800189 L2: l2-cache@00a02000 {
190 compatible = "arm,pl310-cache";
191 reg = <0x00a02000 0x1000>;
Troy Kisky275c08b2013-11-14 14:02:13 -0700192 interrupts = <0 92 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guo7d740f82011-09-06 13:53:26 +0800193 cache-unified;
194 cache-level = <2>;
Dirk Behme5a5ca562013-04-26 10:13:55 +0200195 arm,tag-latency = <4 2 3>;
196 arm,data-latency = <4 2 3>;
Peter Chen74332d72016-06-07 17:39:25 +0800197 arm,shared-override;
Shawn Guo7d740f82011-09-06 13:53:26 +0800198 };
199
Rob Herring3e1b8572017-03-21 21:03:03 -0500200 pcie: pcie@1ffc000 {
Sean Cross3a572912013-09-26 10:51:09 +0800201 compatible = "fsl,imx6q-pcie", "snps,dw-pcie";
Lucas Stachfcd17302014-08-07 19:39:41 +0200202 reg = <0x01ffc000 0x04000>,
203 <0x01f00000 0x80000>;
204 reg-names = "dbi", "config";
Sean Cross3a572912013-09-26 10:51:09 +0800205 #address-cells = <3>;
206 #size-cells = <2>;
207 device_type = "pci";
Rob Herring3e1b8572017-03-21 21:03:03 -0500208 bus-range = <0x00 0xff>;
Lucas Stachd9cf0a12015-11-30 18:00:10 +0100209 ranges = <0x81000000 0 0 0x01f80000 0 0x00010000 /* downstream I/O */
Sean Cross3a572912013-09-26 10:51:09 +0800210 0x82000000 0 0x01000000 0x01000000 0 0x00f00000>; /* non-prefetchable memory */
211 num-lanes = <1>;
Lucas Stach92a7eb72014-04-30 13:58:15 +0800212 interrupts = <GIC_SPI 120 IRQ_TYPE_LEVEL_HIGH>;
213 interrupt-names = "msi";
Lucas Stach07134a32014-03-05 14:25:50 +0100214 #interrupt-cells = <1>;
215 interrupt-map-mask = <0 0 0 0x7>;
Lucas Stach1a9fa192015-08-05 18:54:37 +0200216 interrupt-map = <0 0 0 1 &gpc GIC_SPI 123 IRQ_TYPE_LEVEL_HIGH>,
Jagan Tekibf5393c2016-10-14 15:09:29 +0530217 <0 0 0 2 &gpc GIC_SPI 122 IRQ_TYPE_LEVEL_HIGH>,
218 <0 0 0 3 &gpc GIC_SPI 121 IRQ_TYPE_LEVEL_HIGH>,
219 <0 0 0 4 &gpc GIC_SPI 120 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guo8888f652014-06-15 20:36:50 +0800220 clocks = <&clks IMX6QDL_CLK_PCIE_AXI>,
221 <&clks IMX6QDL_CLK_LVDS1_GATE>,
222 <&clks IMX6QDL_CLK_PCIE_REF_125M>;
Lucas Stach92a7eb72014-04-30 13:58:15 +0800223 clock-names = "pcie", "pcie_bus", "pcie_phy";
Sean Cross3a572912013-09-26 10:51:09 +0800224 status = "disabled";
225 };
226
Dirk Behme218abe62013-02-15 15:10:01 +0100227 pmu {
228 compatible = "arm,cortex-a9-pmu";
Troy Kisky275c08b2013-11-14 14:02:13 -0700229 interrupts = <0 94 IRQ_TYPE_LEVEL_HIGH>;
Dirk Behme218abe62013-02-15 15:10:01 +0100230 };
231
Shawn Guo7d740f82011-09-06 13:53:26 +0800232 aips-bus@02000000 { /* AIPS1 */
233 compatible = "fsl,aips-bus", "simple-bus";
234 #address-cells = <1>;
235 #size-cells = <1>;
236 reg = <0x02000000 0x100000>;
237 ranges;
238
239 spba-bus@02000000 {
240 compatible = "fsl,spba-bus", "simple-bus";
241 #address-cells = <1>;
242 #size-cells = <1>;
243 reg = <0x02000000 0x40000>;
244 ranges;
245
Sascha Hauer7b7d6722012-11-15 09:31:52 +0100246 spdif: spdif@02004000 {
Fabio Estevamc9d96df2013-09-02 23:51:41 -0300247 compatible = "fsl,imx35-spdif";
Shawn Guo7d740f82011-09-06 13:53:26 +0800248 reg = <0x02004000 0x4000>;
Troy Kisky275c08b2013-11-14 14:02:13 -0700249 interrupts = <0 52 IRQ_TYPE_LEVEL_HIGH>;
Fabio Estevamc9d96df2013-09-02 23:51:41 -0300250 dmas = <&sdma 14 18 0>,
251 <&sdma 15 18 0>;
252 dma-names = "rx", "tx";
Shengjiu Wang833f2cb2015-10-10 18:15:07 +0800253 clocks = <&clks IMX6QDL_CLK_SPDIF_GCLK>, <&clks IMX6QDL_CLK_OSC>,
254 <&clks IMX6QDL_CLK_SPDIF>, <&clks IMX6QDL_CLK_ASRC>,
255 <&clks IMX6QDL_CLK_DUMMY>, <&clks IMX6QDL_CLK_ESAI_EXTAL>,
Fabio Estevamf065e9e2016-08-31 10:56:48 -0300256 <&clks IMX6QDL_CLK_IPG>, <&clks IMX6QDL_CLK_DUMMY>,
Shengjiu Wang833f2cb2015-10-10 18:15:07 +0800257 <&clks IMX6QDL_CLK_DUMMY>, <&clks IMX6QDL_CLK_SPBA>;
Fabio Estevamc9d96df2013-09-02 23:51:41 -0300258 clock-names = "core", "rxtx0",
259 "rxtx1", "rxtx2",
260 "rxtx3", "rxtx4",
261 "rxtx5", "rxtx6",
Shengjiu Wang09d30592015-11-26 10:39:30 +0800262 "rxtx7", "spba";
Fabio Estevamc9d96df2013-09-02 23:51:41 -0300263 status = "disabled";
Shawn Guo7d740f82011-09-06 13:53:26 +0800264 };
265
Sascha Hauer7b7d6722012-11-15 09:31:52 +0100266 ecspi1: ecspi@02008000 {
Shawn Guo7d740f82011-09-06 13:53:26 +0800267 #address-cells = <1>;
268 #size-cells = <0>;
269 compatible = "fsl,imx6q-ecspi", "fsl,imx51-ecspi";
270 reg = <0x02008000 0x4000>;
Troy Kisky275c08b2013-11-14 14:02:13 -0700271 interrupts = <0 31 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guo8888f652014-06-15 20:36:50 +0800272 clocks = <&clks IMX6QDL_CLK_ECSPI1>,
273 <&clks IMX6QDL_CLK_ECSPI1>;
Shawn Guo0e87e042012-08-22 21:36:28 +0800274 clock-names = "ipg", "per";
Sascha Hauerdd4b4872016-02-17 14:28:59 +0100275 dmas = <&sdma 3 8 1>, <&sdma 4 8 2>;
Frank Lib3810c32014-01-04 06:53:52 +0800276 dma-names = "rx", "tx";
Shawn Guo7d740f82011-09-06 13:53:26 +0800277 status = "disabled";
278 };
279
Sascha Hauer7b7d6722012-11-15 09:31:52 +0100280 ecspi2: ecspi@0200c000 {
Shawn Guo7d740f82011-09-06 13:53:26 +0800281 #address-cells = <1>;
282 #size-cells = <0>;
283 compatible = "fsl,imx6q-ecspi", "fsl,imx51-ecspi";
284 reg = <0x0200c000 0x4000>;
Troy Kisky275c08b2013-11-14 14:02:13 -0700285 interrupts = <0 32 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guo8888f652014-06-15 20:36:50 +0800286 clocks = <&clks IMX6QDL_CLK_ECSPI2>,
287 <&clks IMX6QDL_CLK_ECSPI2>;
Shawn Guo0e87e042012-08-22 21:36:28 +0800288 clock-names = "ipg", "per";
Sascha Hauerdd4b4872016-02-17 14:28:59 +0100289 dmas = <&sdma 5 8 1>, <&sdma 6 8 2>;
Frank Lib3810c32014-01-04 06:53:52 +0800290 dma-names = "rx", "tx";
Shawn Guo7d740f82011-09-06 13:53:26 +0800291 status = "disabled";
292 };
293
Sascha Hauer7b7d6722012-11-15 09:31:52 +0100294 ecspi3: ecspi@02010000 {
Shawn Guo7d740f82011-09-06 13:53:26 +0800295 #address-cells = <1>;
296 #size-cells = <0>;
297 compatible = "fsl,imx6q-ecspi", "fsl,imx51-ecspi";
298 reg = <0x02010000 0x4000>;
Troy Kisky275c08b2013-11-14 14:02:13 -0700299 interrupts = <0 33 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guo8888f652014-06-15 20:36:50 +0800300 clocks = <&clks IMX6QDL_CLK_ECSPI3>,
301 <&clks IMX6QDL_CLK_ECSPI3>;
Shawn Guo0e87e042012-08-22 21:36:28 +0800302 clock-names = "ipg", "per";
Sascha Hauerdd4b4872016-02-17 14:28:59 +0100303 dmas = <&sdma 7 8 1>, <&sdma 8 8 2>;
Frank Lib3810c32014-01-04 06:53:52 +0800304 dma-names = "rx", "tx";
Shawn Guo7d740f82011-09-06 13:53:26 +0800305 status = "disabled";
306 };
307
Sascha Hauer7b7d6722012-11-15 09:31:52 +0100308 ecspi4: ecspi@02014000 {
Shawn Guo7d740f82011-09-06 13:53:26 +0800309 #address-cells = <1>;
310 #size-cells = <0>;
311 compatible = "fsl,imx6q-ecspi", "fsl,imx51-ecspi";
312 reg = <0x02014000 0x4000>;
Troy Kisky275c08b2013-11-14 14:02:13 -0700313 interrupts = <0 34 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guo8888f652014-06-15 20:36:50 +0800314 clocks = <&clks IMX6QDL_CLK_ECSPI4>,
315 <&clks IMX6QDL_CLK_ECSPI4>;
Shawn Guo0e87e042012-08-22 21:36:28 +0800316 clock-names = "ipg", "per";
Sascha Hauerdd4b4872016-02-17 14:28:59 +0100317 dmas = <&sdma 9 8 1>, <&sdma 10 8 2>;
Frank Lib3810c32014-01-04 06:53:52 +0800318 dma-names = "rx", "tx";
Shawn Guo7d740f82011-09-06 13:53:26 +0800319 status = "disabled";
320 };
321
Shawn Guo0c456cf2012-04-02 14:39:26 +0800322 uart1: serial@02020000 {
Shawn Guo7d740f82011-09-06 13:53:26 +0800323 compatible = "fsl,imx6q-uart", "fsl,imx21-uart";
324 reg = <0x02020000 0x4000>;
Troy Kisky275c08b2013-11-14 14:02:13 -0700325 interrupts = <0 26 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guo8888f652014-06-15 20:36:50 +0800326 clocks = <&clks IMX6QDL_CLK_UART_IPG>,
327 <&clks IMX6QDL_CLK_UART_SERIAL>;
Shawn Guo0e87e042012-08-22 21:36:28 +0800328 clock-names = "ipg", "per";
Huang Shijie72a5ceb2013-07-12 18:02:09 +0800329 dmas = <&sdma 25 4 0>, <&sdma 26 4 0>;
330 dma-names = "rx", "tx";
Shawn Guo7d740f82011-09-06 13:53:26 +0800331 status = "disabled";
332 };
333
Sascha Hauer7b7d6722012-11-15 09:31:52 +0100334 esai: esai@02024000 {
Shengjiu Wang97dae852015-06-18 13:58:44 +0800335 #sound-dai-cells = <0>;
336 compatible = "fsl,imx35-esai";
Shawn Guo7d740f82011-09-06 13:53:26 +0800337 reg = <0x02024000 0x4000>;
Troy Kisky275c08b2013-11-14 14:02:13 -0700338 interrupts = <0 51 IRQ_TYPE_LEVEL_HIGH>;
Shengjiu Wang97dae852015-06-18 13:58:44 +0800339 clocks = <&clks IMX6QDL_CLK_ESAI_IPG>,
340 <&clks IMX6QDL_CLK_ESAI_MEM>,
341 <&clks IMX6QDL_CLK_ESAI_EXTAL>,
342 <&clks IMX6QDL_CLK_ESAI_IPG>,
343 <&clks IMX6QDL_CLK_SPBA>;
Shengjiu Wang09d30592015-11-26 10:39:30 +0800344 clock-names = "core", "mem", "extal", "fsys", "spba";
Shengjiu Wang97dae852015-06-18 13:58:44 +0800345 dmas = <&sdma 23 21 0>, <&sdma 24 21 0>;
346 dma-names = "rx", "tx";
347 status = "disabled";
Shawn Guo7d740f82011-09-06 13:53:26 +0800348 };
349
Richard Zhaob1a5da82012-05-02 10:29:10 +0800350 ssi1: ssi@02028000 {
Alexander Shiyan6ff7f512014-08-19 20:00:09 +0400351 #sound-dai-cells = <0>;
Markus Pargmann98ea6ad2014-01-17 10:07:42 +0100352 compatible = "fsl,imx6q-ssi",
Fabio Estevam4c035272014-07-07 10:04:52 -0300353 "fsl,imx51-ssi";
Shawn Guo7d740f82011-09-06 13:53:26 +0800354 reg = <0x02028000 0x4000>;
Troy Kisky275c08b2013-11-14 14:02:13 -0700355 interrupts = <0 46 IRQ_TYPE_LEVEL_HIGH>;
Shengjiu Wang935632e2014-09-09 17:13:26 +0800356 clocks = <&clks IMX6QDL_CLK_SSI1_IPG>,
357 <&clks IMX6QDL_CLK_SSI1>;
358 clock-names = "ipg", "baud";
Shawn Guo5da826a2013-07-17 13:50:54 +0800359 dmas = <&sdma 37 1 0>,
360 <&sdma 38 1 0>;
361 dma-names = "rx", "tx";
Richard Zhaob1a5da82012-05-02 10:29:10 +0800362 fsl,fifo-depth = <15>;
Richard Zhaob1a5da82012-05-02 10:29:10 +0800363 status = "disabled";
Shawn Guo7d740f82011-09-06 13:53:26 +0800364 };
365
Richard Zhaob1a5da82012-05-02 10:29:10 +0800366 ssi2: ssi@0202c000 {
Alexander Shiyan6ff7f512014-08-19 20:00:09 +0400367 #sound-dai-cells = <0>;
Markus Pargmann98ea6ad2014-01-17 10:07:42 +0100368 compatible = "fsl,imx6q-ssi",
Fabio Estevam4c035272014-07-07 10:04:52 -0300369 "fsl,imx51-ssi";
Shawn Guo7d740f82011-09-06 13:53:26 +0800370 reg = <0x0202c000 0x4000>;
Troy Kisky275c08b2013-11-14 14:02:13 -0700371 interrupts = <0 47 IRQ_TYPE_LEVEL_HIGH>;
Shengjiu Wang935632e2014-09-09 17:13:26 +0800372 clocks = <&clks IMX6QDL_CLK_SSI2_IPG>,
373 <&clks IMX6QDL_CLK_SSI2>;
374 clock-names = "ipg", "baud";
Shawn Guo5da826a2013-07-17 13:50:54 +0800375 dmas = <&sdma 41 1 0>,
376 <&sdma 42 1 0>;
377 dma-names = "rx", "tx";
Richard Zhaob1a5da82012-05-02 10:29:10 +0800378 fsl,fifo-depth = <15>;
Richard Zhaob1a5da82012-05-02 10:29:10 +0800379 status = "disabled";
Shawn Guo7d740f82011-09-06 13:53:26 +0800380 };
381
Richard Zhaob1a5da82012-05-02 10:29:10 +0800382 ssi3: ssi@02030000 {
Alexander Shiyan6ff7f512014-08-19 20:00:09 +0400383 #sound-dai-cells = <0>;
Markus Pargmann98ea6ad2014-01-17 10:07:42 +0100384 compatible = "fsl,imx6q-ssi",
Fabio Estevam4c035272014-07-07 10:04:52 -0300385 "fsl,imx51-ssi";
Shawn Guo7d740f82011-09-06 13:53:26 +0800386 reg = <0x02030000 0x4000>;
Troy Kisky275c08b2013-11-14 14:02:13 -0700387 interrupts = <0 48 IRQ_TYPE_LEVEL_HIGH>;
Shengjiu Wang935632e2014-09-09 17:13:26 +0800388 clocks = <&clks IMX6QDL_CLK_SSI3_IPG>,
389 <&clks IMX6QDL_CLK_SSI3>;
390 clock-names = "ipg", "baud";
Shawn Guo5da826a2013-07-17 13:50:54 +0800391 dmas = <&sdma 45 1 0>,
392 <&sdma 46 1 0>;
393 dma-names = "rx", "tx";
Richard Zhaob1a5da82012-05-02 10:29:10 +0800394 fsl,fifo-depth = <15>;
Richard Zhaob1a5da82012-05-02 10:29:10 +0800395 status = "disabled";
Shawn Guo7d740f82011-09-06 13:53:26 +0800396 };
397
Sascha Hauer7b7d6722012-11-15 09:31:52 +0100398 asrc: asrc@02034000 {
Shengjiu Wang97dae852015-06-18 13:58:44 +0800399 compatible = "fsl,imx53-asrc";
Shawn Guo7d740f82011-09-06 13:53:26 +0800400 reg = <0x02034000 0x4000>;
Troy Kisky275c08b2013-11-14 14:02:13 -0700401 interrupts = <0 50 IRQ_TYPE_LEVEL_HIGH>;
Shengjiu Wang97dae852015-06-18 13:58:44 +0800402 clocks = <&clks IMX6QDL_CLK_ASRC_IPG>,
403 <&clks IMX6QDL_CLK_ASRC_MEM>, <&clks 0>,
404 <&clks 0>, <&clks 0>, <&clks 0>, <&clks 0>,
405 <&clks 0>, <&clks 0>, <&clks 0>, <&clks 0>,
406 <&clks 0>, <&clks 0>, <&clks 0>, <&clks 0>,
407 <&clks IMX6QDL_CLK_ASRC>, <&clks 0>, <&clks 0>,
408 <&clks IMX6QDL_CLK_SPBA>;
409 clock-names = "mem", "ipg", "asrck_0",
410 "asrck_1", "asrck_2", "asrck_3", "asrck_4",
411 "asrck_5", "asrck_6", "asrck_7", "asrck_8",
412 "asrck_9", "asrck_a", "asrck_b", "asrck_c",
Shengjiu Wang09d30592015-11-26 10:39:30 +0800413 "asrck_d", "asrck_e", "asrck_f", "spba";
Shengjiu Wang97dae852015-06-18 13:58:44 +0800414 dmas = <&sdma 17 23 1>, <&sdma 18 23 1>, <&sdma 19 23 1>,
415 <&sdma 20 23 1>, <&sdma 21 23 1>, <&sdma 22 23 1>;
416 dma-names = "rxa", "rxb", "rxc",
417 "txa", "txb", "txc";
418 fsl,asrc-rate = <48000>;
419 fsl,asrc-width = <16>;
420 status = "okay";
Shawn Guo7d740f82011-09-06 13:53:26 +0800421 };
422
423 spba@0203c000 {
424 reg = <0x0203c000 0x4000>;
425 };
426 };
427
Sascha Hauer7b7d6722012-11-15 09:31:52 +0100428 vpu: vpu@02040000 {
Philipp Zabela04a0b62014-11-11 19:12:47 -0200429 compatible = "cnm,coda960";
Shawn Guo7d740f82011-09-06 13:53:26 +0800430 reg = <0x02040000 0x3c000>;
Philipp Zabelb2faf1a2014-11-28 16:23:46 +0100431 interrupts = <0 12 IRQ_TYPE_LEVEL_HIGH>,
432 <0 3 IRQ_TYPE_LEVEL_HIGH>;
Philipp Zabela04a0b62014-11-11 19:12:47 -0200433 interrupt-names = "bit", "jpeg";
434 clocks = <&clks IMX6QDL_CLK_VPU_AXI>,
Fabio Estevamc9997ba2014-12-16 11:02:41 -0200435 <&clks IMX6QDL_CLK_MMDC_CH0_AXI>;
436 clock-names = "per", "ahb";
Philipp Zabel29eea642015-05-07 15:24:16 +0200437 power-domains = <&gpc 1>;
Philipp Zabela04a0b62014-11-11 19:12:47 -0200438 resets = <&src 1>;
439 iram = <&ocram>;
Shawn Guo7d740f82011-09-06 13:53:26 +0800440 };
441
442 aipstz@0207c000 { /* AIPSTZ1 */
443 reg = <0x0207c000 0x4000>;
444 };
445
Sascha Hauer7b7d6722012-11-15 09:31:52 +0100446 pwm1: pwm@02080000 {
Sascha Hauer33b38582012-11-21 12:18:28 +0100447 #pwm-cells = <2>;
448 compatible = "fsl,imx6q-pwm", "fsl,imx27-pwm";
Shawn Guo7d740f82011-09-06 13:53:26 +0800449 reg = <0x02080000 0x4000>;
Troy Kisky275c08b2013-11-14 14:02:13 -0700450 interrupts = <0 83 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guo8888f652014-06-15 20:36:50 +0800451 clocks = <&clks IMX6QDL_CLK_IPG>,
452 <&clks IMX6QDL_CLK_PWM1>;
Sascha Hauer33b38582012-11-21 12:18:28 +0100453 clock-names = "ipg", "per";
Philipp Zabele2675262015-03-09 17:40:36 +0100454 status = "disabled";
Shawn Guo7d740f82011-09-06 13:53:26 +0800455 };
456
Sascha Hauer7b7d6722012-11-15 09:31:52 +0100457 pwm2: pwm@02084000 {
Sascha Hauer33b38582012-11-21 12:18:28 +0100458 #pwm-cells = <2>;
459 compatible = "fsl,imx6q-pwm", "fsl,imx27-pwm";
Shawn Guo7d740f82011-09-06 13:53:26 +0800460 reg = <0x02084000 0x4000>;
Troy Kisky275c08b2013-11-14 14:02:13 -0700461 interrupts = <0 84 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guo8888f652014-06-15 20:36:50 +0800462 clocks = <&clks IMX6QDL_CLK_IPG>,
463 <&clks IMX6QDL_CLK_PWM2>;
Sascha Hauer33b38582012-11-21 12:18:28 +0100464 clock-names = "ipg", "per";
Philipp Zabele2675262015-03-09 17:40:36 +0100465 status = "disabled";
Shawn Guo7d740f82011-09-06 13:53:26 +0800466 };
467
Sascha Hauer7b7d6722012-11-15 09:31:52 +0100468 pwm3: pwm@02088000 {
Sascha Hauer33b38582012-11-21 12:18:28 +0100469 #pwm-cells = <2>;
470 compatible = "fsl,imx6q-pwm", "fsl,imx27-pwm";
Shawn Guo7d740f82011-09-06 13:53:26 +0800471 reg = <0x02088000 0x4000>;
Troy Kisky275c08b2013-11-14 14:02:13 -0700472 interrupts = <0 85 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guo8888f652014-06-15 20:36:50 +0800473 clocks = <&clks IMX6QDL_CLK_IPG>,
474 <&clks IMX6QDL_CLK_PWM3>;
Sascha Hauer33b38582012-11-21 12:18:28 +0100475 clock-names = "ipg", "per";
Philipp Zabele2675262015-03-09 17:40:36 +0100476 status = "disabled";
Shawn Guo7d740f82011-09-06 13:53:26 +0800477 };
478
Sascha Hauer7b7d6722012-11-15 09:31:52 +0100479 pwm4: pwm@0208c000 {
Sascha Hauer33b38582012-11-21 12:18:28 +0100480 #pwm-cells = <2>;
481 compatible = "fsl,imx6q-pwm", "fsl,imx27-pwm";
Shawn Guo7d740f82011-09-06 13:53:26 +0800482 reg = <0x0208c000 0x4000>;
Troy Kisky275c08b2013-11-14 14:02:13 -0700483 interrupts = <0 86 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guo8888f652014-06-15 20:36:50 +0800484 clocks = <&clks IMX6QDL_CLK_IPG>,
485 <&clks IMX6QDL_CLK_PWM4>;
Sascha Hauer33b38582012-11-21 12:18:28 +0100486 clock-names = "ipg", "per";
Philipp Zabele2675262015-03-09 17:40:36 +0100487 status = "disabled";
Shawn Guo7d740f82011-09-06 13:53:26 +0800488 };
489
Sascha Hauer7b7d6722012-11-15 09:31:52 +0100490 can1: flexcan@02090000 {
Sascha Hauer0f225212013-06-25 15:51:46 +0200491 compatible = "fsl,imx6q-flexcan";
Shawn Guo7d740f82011-09-06 13:53:26 +0800492 reg = <0x02090000 0x4000>;
Troy Kisky275c08b2013-11-14 14:02:13 -0700493 interrupts = <0 110 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guo8888f652014-06-15 20:36:50 +0800494 clocks = <&clks IMX6QDL_CLK_CAN1_IPG>,
495 <&clks IMX6QDL_CLK_CAN1_SERIAL>;
Sascha Hauer0f225212013-06-25 15:51:46 +0200496 clock-names = "ipg", "per";
Tim Harveya1135332013-10-22 21:51:27 -0700497 status = "disabled";
Shawn Guo7d740f82011-09-06 13:53:26 +0800498 };
499
Sascha Hauer7b7d6722012-11-15 09:31:52 +0100500 can2: flexcan@02094000 {
Sascha Hauer0f225212013-06-25 15:51:46 +0200501 compatible = "fsl,imx6q-flexcan";
Shawn Guo7d740f82011-09-06 13:53:26 +0800502 reg = <0x02094000 0x4000>;
Troy Kisky275c08b2013-11-14 14:02:13 -0700503 interrupts = <0 111 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guo8888f652014-06-15 20:36:50 +0800504 clocks = <&clks IMX6QDL_CLK_CAN2_IPG>,
505 <&clks IMX6QDL_CLK_CAN2_SERIAL>;
Sascha Hauer0f225212013-06-25 15:51:46 +0200506 clock-names = "ipg", "per";
Tim Harveya1135332013-10-22 21:51:27 -0700507 status = "disabled";
Shawn Guo7d740f82011-09-06 13:53:26 +0800508 };
509
Sascha Hauer7b7d6722012-11-15 09:31:52 +0100510 gpt: gpt@02098000 {
Sascha Hauer97b108f2013-06-25 15:51:47 +0200511 compatible = "fsl,imx6q-gpt", "fsl,imx31-gpt";
Shawn Guo7d740f82011-09-06 13:53:26 +0800512 reg = <0x02098000 0x4000>;
Troy Kisky275c08b2013-11-14 14:02:13 -0700513 interrupts = <0 55 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guo8888f652014-06-15 20:36:50 +0800514 clocks = <&clks IMX6QDL_CLK_GPT_IPG>,
Anson Huang2b2244a2014-09-11 11:29:41 +0800515 <&clks IMX6QDL_CLK_GPT_IPG_PER>,
516 <&clks IMX6QDL_CLK_GPT_3M>;
517 clock-names = "ipg", "per", "osc_per";
Shawn Guo7d740f82011-09-06 13:53:26 +0800518 };
519
Richard Zhao4d191862011-12-14 09:26:44 +0800520 gpio1: gpio@0209c000 {
Benoît Thébaudeauaeb27742012-06-22 21:04:06 +0200521 compatible = "fsl,imx6q-gpio", "fsl,imx35-gpio";
Shawn Guo7d740f82011-09-06 13:53:26 +0800522 reg = <0x0209c000 0x4000>;
Troy Kisky275c08b2013-11-14 14:02:13 -0700523 interrupts = <0 66 IRQ_TYPE_LEVEL_HIGH>,
524 <0 67 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guo7d740f82011-09-06 13:53:26 +0800525 gpio-controller;
526 #gpio-cells = <2>;
527 interrupt-controller;
Shawn Guo88cde8b2012-07-06 20:03:37 +0800528 #interrupt-cells = <2>;
Shawn Guo7d740f82011-09-06 13:53:26 +0800529 };
530
Richard Zhao4d191862011-12-14 09:26:44 +0800531 gpio2: gpio@020a0000 {
Benoît Thébaudeauaeb27742012-06-22 21:04:06 +0200532 compatible = "fsl,imx6q-gpio", "fsl,imx35-gpio";
Shawn Guo7d740f82011-09-06 13:53:26 +0800533 reg = <0x020a0000 0x4000>;
Troy Kisky275c08b2013-11-14 14:02:13 -0700534 interrupts = <0 68 IRQ_TYPE_LEVEL_HIGH>,
535 <0 69 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guo7d740f82011-09-06 13:53:26 +0800536 gpio-controller;
537 #gpio-cells = <2>;
538 interrupt-controller;
Shawn Guo88cde8b2012-07-06 20:03:37 +0800539 #interrupt-cells = <2>;
Shawn Guo7d740f82011-09-06 13:53:26 +0800540 };
541
Richard Zhao4d191862011-12-14 09:26:44 +0800542 gpio3: gpio@020a4000 {
Benoît Thébaudeauaeb27742012-06-22 21:04:06 +0200543 compatible = "fsl,imx6q-gpio", "fsl,imx35-gpio";
Shawn Guo7d740f82011-09-06 13:53:26 +0800544 reg = <0x020a4000 0x4000>;
Troy Kisky275c08b2013-11-14 14:02:13 -0700545 interrupts = <0 70 IRQ_TYPE_LEVEL_HIGH>,
546 <0 71 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guo7d740f82011-09-06 13:53:26 +0800547 gpio-controller;
548 #gpio-cells = <2>;
549 interrupt-controller;
Shawn Guo88cde8b2012-07-06 20:03:37 +0800550 #interrupt-cells = <2>;
Shawn Guo7d740f82011-09-06 13:53:26 +0800551 };
552
Richard Zhao4d191862011-12-14 09:26:44 +0800553 gpio4: gpio@020a8000 {
Benoît Thébaudeauaeb27742012-06-22 21:04:06 +0200554 compatible = "fsl,imx6q-gpio", "fsl,imx35-gpio";
Shawn Guo7d740f82011-09-06 13:53:26 +0800555 reg = <0x020a8000 0x4000>;
Troy Kisky275c08b2013-11-14 14:02:13 -0700556 interrupts = <0 72 IRQ_TYPE_LEVEL_HIGH>,
557 <0 73 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guo7d740f82011-09-06 13:53:26 +0800558 gpio-controller;
559 #gpio-cells = <2>;
560 interrupt-controller;
Shawn Guo88cde8b2012-07-06 20:03:37 +0800561 #interrupt-cells = <2>;
Shawn Guo7d740f82011-09-06 13:53:26 +0800562 };
563
Richard Zhao4d191862011-12-14 09:26:44 +0800564 gpio5: gpio@020ac000 {
Benoît Thébaudeauaeb27742012-06-22 21:04:06 +0200565 compatible = "fsl,imx6q-gpio", "fsl,imx35-gpio";
Shawn Guo7d740f82011-09-06 13:53:26 +0800566 reg = <0x020ac000 0x4000>;
Troy Kisky275c08b2013-11-14 14:02:13 -0700567 interrupts = <0 74 IRQ_TYPE_LEVEL_HIGH>,
568 <0 75 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guo7d740f82011-09-06 13:53:26 +0800569 gpio-controller;
570 #gpio-cells = <2>;
571 interrupt-controller;
Shawn Guo88cde8b2012-07-06 20:03:37 +0800572 #interrupt-cells = <2>;
Shawn Guo7d740f82011-09-06 13:53:26 +0800573 };
574
Richard Zhao4d191862011-12-14 09:26:44 +0800575 gpio6: gpio@020b0000 {
Benoît Thébaudeauaeb27742012-06-22 21:04:06 +0200576 compatible = "fsl,imx6q-gpio", "fsl,imx35-gpio";
Shawn Guo7d740f82011-09-06 13:53:26 +0800577 reg = <0x020b0000 0x4000>;
Troy Kisky275c08b2013-11-14 14:02:13 -0700578 interrupts = <0 76 IRQ_TYPE_LEVEL_HIGH>,
579 <0 77 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guo7d740f82011-09-06 13:53:26 +0800580 gpio-controller;
581 #gpio-cells = <2>;
582 interrupt-controller;
Shawn Guo88cde8b2012-07-06 20:03:37 +0800583 #interrupt-cells = <2>;
Shawn Guo7d740f82011-09-06 13:53:26 +0800584 };
585
Richard Zhao4d191862011-12-14 09:26:44 +0800586 gpio7: gpio@020b4000 {
Benoît Thébaudeauaeb27742012-06-22 21:04:06 +0200587 compatible = "fsl,imx6q-gpio", "fsl,imx35-gpio";
Shawn Guo7d740f82011-09-06 13:53:26 +0800588 reg = <0x020b4000 0x4000>;
Troy Kisky275c08b2013-11-14 14:02:13 -0700589 interrupts = <0 78 IRQ_TYPE_LEVEL_HIGH>,
590 <0 79 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guo7d740f82011-09-06 13:53:26 +0800591 gpio-controller;
592 #gpio-cells = <2>;
593 interrupt-controller;
Shawn Guo88cde8b2012-07-06 20:03:37 +0800594 #interrupt-cells = <2>;
Shawn Guo7d740f82011-09-06 13:53:26 +0800595 };
596
Sascha Hauer7b7d6722012-11-15 09:31:52 +0100597 kpp: kpp@020b8000 {
Lothar Waßmann36d3a8f2014-06-06 13:02:59 +0200598 compatible = "fsl,imx6q-kpp", "fsl,imx21-kpp";
Shawn Guo7d740f82011-09-06 13:53:26 +0800599 reg = <0x020b8000 0x4000>;
Troy Kisky275c08b2013-11-14 14:02:13 -0700600 interrupts = <0 82 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guo8888f652014-06-15 20:36:50 +0800601 clocks = <&clks IMX6QDL_CLK_IPG>;
Fabio Estevam1b6f2362014-06-24 21:13:44 -0300602 status = "disabled";
Shawn Guo7d740f82011-09-06 13:53:26 +0800603 };
604
Sascha Hauer7b7d6722012-11-15 09:31:52 +0100605 wdog1: wdog@020bc000 {
Shawn Guo7d740f82011-09-06 13:53:26 +0800606 compatible = "fsl,imx6q-wdt", "fsl,imx21-wdt";
607 reg = <0x020bc000 0x4000>;
Troy Kisky275c08b2013-11-14 14:02:13 -0700608 interrupts = <0 80 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guo8888f652014-06-15 20:36:50 +0800609 clocks = <&clks IMX6QDL_CLK_DUMMY>;
Shawn Guo7d740f82011-09-06 13:53:26 +0800610 };
611
Sascha Hauer7b7d6722012-11-15 09:31:52 +0100612 wdog2: wdog@020c0000 {
Shawn Guo7d740f82011-09-06 13:53:26 +0800613 compatible = "fsl,imx6q-wdt", "fsl,imx21-wdt";
614 reg = <0x020c0000 0x4000>;
Troy Kisky275c08b2013-11-14 14:02:13 -0700615 interrupts = <0 81 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guo8888f652014-06-15 20:36:50 +0800616 clocks = <&clks IMX6QDL_CLK_DUMMY>;
Shawn Guo7d740f82011-09-06 13:53:26 +0800617 status = "disabled";
618 };
619
Shawn Guo0e87e042012-08-22 21:36:28 +0800620 clks: ccm@020c4000 {
Shawn Guo7d740f82011-09-06 13:53:26 +0800621 compatible = "fsl,imx6q-ccm";
622 reg = <0x020c4000 0x4000>;
Troy Kisky275c08b2013-11-14 14:02:13 -0700623 interrupts = <0 87 IRQ_TYPE_LEVEL_HIGH>,
624 <0 88 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guo0e87e042012-08-22 21:36:28 +0800625 #clock-cells = <1>;
Shawn Guo7d740f82011-09-06 13:53:26 +0800626 };
627
Dong Aishengbaa64152012-09-05 10:57:15 +0800628 anatop: anatop@020c8000 {
629 compatible = "fsl,imx6q-anatop", "syscon", "simple-bus";
Shawn Guo7d740f82011-09-06 13:53:26 +0800630 reg = <0x020c8000 0x1000>;
Troy Kisky275c08b2013-11-14 14:02:13 -0700631 interrupts = <0 49 IRQ_TYPE_LEVEL_HIGH>,
632 <0 54 IRQ_TYPE_LEVEL_HIGH>,
633 <0 127 IRQ_TYPE_LEVEL_HIGH>;
Ying-Chun Liu (PaulLiu)a1e327e2012-03-30 21:46:53 +0800634
Fabio Estevamc77ebb42016-04-29 19:39:45 -0300635 regulator-1p1 {
Ying-Chun Liu (PaulLiu)a1e327e2012-03-30 21:46:53 +0800636 compatible = "fsl,anatop-regulator";
637 regulator-name = "vdd1p1";
Lucas Stachecbf5e72017-01-19 15:21:34 +0100638 regulator-min-microvolt = <1000000>;
639 regulator-max-microvolt = <1200000>;
Ying-Chun Liu (PaulLiu)a1e327e2012-03-30 21:46:53 +0800640 regulator-always-on;
641 anatop-reg-offset = <0x110>;
642 anatop-vol-bit-shift = <8>;
643 anatop-vol-bit-width = <5>;
644 anatop-min-bit-val = <4>;
645 anatop-min-voltage = <800000>;
646 anatop-max-voltage = <1375000>;
647 };
648
Fabio Estevamc77ebb42016-04-29 19:39:45 -0300649 regulator-3p0 {
Ying-Chun Liu (PaulLiu)a1e327e2012-03-30 21:46:53 +0800650 compatible = "fsl,anatop-regulator";
651 regulator-name = "vdd3p0";
652 regulator-min-microvolt = <2800000>;
653 regulator-max-microvolt = <3150000>;
654 regulator-always-on;
655 anatop-reg-offset = <0x120>;
656 anatop-vol-bit-shift = <8>;
657 anatop-vol-bit-width = <5>;
658 anatop-min-bit-val = <0>;
659 anatop-min-voltage = <2625000>;
660 anatop-max-voltage = <3400000>;
661 };
662
Fabio Estevamc77ebb42016-04-29 19:39:45 -0300663 regulator-2p5 {
Ying-Chun Liu (PaulLiu)a1e327e2012-03-30 21:46:53 +0800664 compatible = "fsl,anatop-regulator";
665 regulator-name = "vdd2p5";
Lucas Stachecbf5e72017-01-19 15:21:34 +0100666 regulator-min-microvolt = <2250000>;
Ying-Chun Liu (PaulLiu)a1e327e2012-03-30 21:46:53 +0800667 regulator-max-microvolt = <2750000>;
668 regulator-always-on;
669 anatop-reg-offset = <0x130>;
670 anatop-vol-bit-shift = <8>;
671 anatop-vol-bit-width = <5>;
672 anatop-min-bit-val = <0>;
Lucas Stach993051b2017-01-19 15:21:33 +0100673 anatop-min-voltage = <2100000>;
674 anatop-max-voltage = <2875000>;
Ying-Chun Liu (PaulLiu)a1e327e2012-03-30 21:46:53 +0800675 };
676
Fabio Estevamc77ebb42016-04-29 19:39:45 -0300677 reg_arm: regulator-vddcore {
Ying-Chun Liu (PaulLiu)a1e327e2012-03-30 21:46:53 +0800678 compatible = "fsl,anatop-regulator";
Fabio Estevam118c98a2013-12-19 21:08:52 -0200679 regulator-name = "vddarm";
Ying-Chun Liu (PaulLiu)a1e327e2012-03-30 21:46:53 +0800680 regulator-min-microvolt = <725000>;
681 regulator-max-microvolt = <1450000>;
682 regulator-always-on;
683 anatop-reg-offset = <0x140>;
684 anatop-vol-bit-shift = <0>;
685 anatop-vol-bit-width = <5>;
Anson Huang46743dd2013-01-30 17:33:44 -0500686 anatop-delay-reg-offset = <0x170>;
687 anatop-delay-bit-shift = <24>;
688 anatop-delay-bit-width = <2>;
Ying-Chun Liu (PaulLiu)a1e327e2012-03-30 21:46:53 +0800689 anatop-min-bit-val = <1>;
690 anatop-min-voltage = <725000>;
691 anatop-max-voltage = <1450000>;
692 };
693
Fabio Estevamc77ebb42016-04-29 19:39:45 -0300694 reg_pu: regulator-vddpu {
Ying-Chun Liu (PaulLiu)a1e327e2012-03-30 21:46:53 +0800695 compatible = "fsl,anatop-regulator";
696 regulator-name = "vddpu";
697 regulator-min-microvolt = <725000>;
698 regulator-max-microvolt = <1450000>;
Philipp Zabel40130d32015-02-23 18:40:15 +0100699 regulator-enable-ramp-delay = <150>;
Ying-Chun Liu (PaulLiu)a1e327e2012-03-30 21:46:53 +0800700 anatop-reg-offset = <0x140>;
701 anatop-vol-bit-shift = <9>;
702 anatop-vol-bit-width = <5>;
Anson Huang46743dd2013-01-30 17:33:44 -0500703 anatop-delay-reg-offset = <0x170>;
704 anatop-delay-bit-shift = <26>;
705 anatop-delay-bit-width = <2>;
Ying-Chun Liu (PaulLiu)a1e327e2012-03-30 21:46:53 +0800706 anatop-min-bit-val = <1>;
707 anatop-min-voltage = <725000>;
708 anatop-max-voltage = <1450000>;
709 };
710
Fabio Estevamc77ebb42016-04-29 19:39:45 -0300711 reg_soc: regulator-vddsoc {
Ying-Chun Liu (PaulLiu)a1e327e2012-03-30 21:46:53 +0800712 compatible = "fsl,anatop-regulator";
713 regulator-name = "vddsoc";
714 regulator-min-microvolt = <725000>;
715 regulator-max-microvolt = <1450000>;
716 regulator-always-on;
717 anatop-reg-offset = <0x140>;
718 anatop-vol-bit-shift = <18>;
719 anatop-vol-bit-width = <5>;
Anson Huang46743dd2013-01-30 17:33:44 -0500720 anatop-delay-reg-offset = <0x170>;
721 anatop-delay-bit-shift = <28>;
722 anatop-delay-bit-width = <2>;
Ying-Chun Liu (PaulLiu)a1e327e2012-03-30 21:46:53 +0800723 anatop-min-bit-val = <1>;
724 anatop-min-voltage = <725000>;
725 anatop-max-voltage = <1450000>;
726 };
Shawn Guo7d740f82011-09-06 13:53:26 +0800727 };
728
Shawn Guo3fe63732013-07-16 21:16:36 +0800729 tempmon: tempmon {
730 compatible = "fsl,imx6q-tempmon";
Troy Kisky275c08b2013-11-14 14:02:13 -0700731 interrupts = <0 49 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guo3fe63732013-07-16 21:16:36 +0800732 fsl,tempmon = <&anatop>;
733 fsl,tempmon-data = <&ocotp>;
Shawn Guo8888f652014-06-15 20:36:50 +0800734 clocks = <&clks IMX6QDL_CLK_PLL3_USB_OTG>;
Shawn Guo3fe63732013-07-16 21:16:36 +0800735 };
736
Richard Zhao74bd88f2012-07-12 14:21:41 +0800737 usbphy1: usbphy@020c9000 {
738 compatible = "fsl,imx6q-usbphy", "fsl,imx23-usbphy";
Shawn Guo7d740f82011-09-06 13:53:26 +0800739 reg = <0x020c9000 0x1000>;
Troy Kisky275c08b2013-11-14 14:02:13 -0700740 interrupts = <0 44 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guo8888f652014-06-15 20:36:50 +0800741 clocks = <&clks IMX6QDL_CLK_USBPHY1>;
Peter Chen76a38852013-12-20 15:52:01 +0800742 fsl,anatop = <&anatop>;
Shawn Guo7d740f82011-09-06 13:53:26 +0800743 };
744
Richard Zhao74bd88f2012-07-12 14:21:41 +0800745 usbphy2: usbphy@020ca000 {
746 compatible = "fsl,imx6q-usbphy", "fsl,imx23-usbphy";
Shawn Guo7d740f82011-09-06 13:53:26 +0800747 reg = <0x020ca000 0x1000>;
Troy Kisky275c08b2013-11-14 14:02:13 -0700748 interrupts = <0 45 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guo8888f652014-06-15 20:36:50 +0800749 clocks = <&clks IMX6QDL_CLK_USBPHY2>;
Peter Chen76a38852013-12-20 15:52:01 +0800750 fsl,anatop = <&anatop>;
Shawn Guo7d740f82011-09-06 13:53:26 +0800751 };
752
Frank Li95d739b2015-05-27 00:25:59 +0800753 snvs: snvs@020cc000 {
754 compatible = "fsl,sec-v4.0-mon", "syscon", "simple-mfd";
755 reg = <0x020cc000 0x4000>;
Shawn Guoc9250382012-07-02 20:13:03 +0800756
Frank Li95d739b2015-05-27 00:25:59 +0800757 snvs_rtc: snvs-rtc-lp {
Shawn Guoc9250382012-07-02 20:13:03 +0800758 compatible = "fsl,sec-v4.0-mon-rtc-lp";
Frank Li95d739b2015-05-27 00:25:59 +0800759 regmap = <&snvs>;
760 offset = <0x34>;
Troy Kisky275c08b2013-11-14 14:02:13 -0700761 interrupts = <0 19 IRQ_TYPE_LEVEL_HIGH>,
762 <0 20 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guoc9250382012-07-02 20:13:03 +0800763 };
Robin Gong422b0672014-11-12 16:20:37 +0800764
Frank Li95d739b2015-05-27 00:25:59 +0800765 snvs_poweroff: snvs-poweroff {
766 compatible = "syscon-poweroff";
767 regmap = <&snvs>;
768 offset = <0x38>;
769 mask = <0x60>;
Robin Gong422b0672014-11-12 16:20:37 +0800770 status = "disabled";
771 };
Shawn Guo7d740f82011-09-06 13:53:26 +0800772 };
773
Sascha Hauer7b7d6722012-11-15 09:31:52 +0100774 epit1: epit@020d0000 { /* EPIT1 */
Shawn Guo7d740f82011-09-06 13:53:26 +0800775 reg = <0x020d0000 0x4000>;
Troy Kisky275c08b2013-11-14 14:02:13 -0700776 interrupts = <0 56 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guo7d740f82011-09-06 13:53:26 +0800777 };
778
Sascha Hauer7b7d6722012-11-15 09:31:52 +0100779 epit2: epit@020d4000 { /* EPIT2 */
Shawn Guo7d740f82011-09-06 13:53:26 +0800780 reg = <0x020d4000 0x4000>;
Troy Kisky275c08b2013-11-14 14:02:13 -0700781 interrupts = <0 57 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guo7d740f82011-09-06 13:53:26 +0800782 };
783
Sascha Hauer7b7d6722012-11-15 09:31:52 +0100784 src: src@020d8000 {
Philipp Zabelbd3d9242013-03-28 17:35:22 +0100785 compatible = "fsl,imx6q-src", "fsl,imx51-src";
Shawn Guo7d740f82011-09-06 13:53:26 +0800786 reg = <0x020d8000 0x4000>;
Troy Kisky275c08b2013-11-14 14:02:13 -0700787 interrupts = <0 91 IRQ_TYPE_LEVEL_HIGH>,
788 <0 96 IRQ_TYPE_LEVEL_HIGH>;
Philipp Zabel09ebf362013-03-28 17:35:20 +0100789 #reset-cells = <1>;
Shawn Guo7d740f82011-09-06 13:53:26 +0800790 };
791
Sascha Hauer7b7d6722012-11-15 09:31:52 +0100792 gpc: gpc@020dc000 {
Shawn Guo7d740f82011-09-06 13:53:26 +0800793 compatible = "fsl,imx6q-gpc";
794 reg = <0x020dc000 0x4000>;
Marc Zyngierb923ff62015-02-23 17:45:18 +0000795 interrupt-controller;
796 #interrupt-cells = <3>;
Troy Kisky275c08b2013-11-14 14:02:13 -0700797 interrupts = <0 89 IRQ_TYPE_LEVEL_HIGH>,
798 <0 90 IRQ_TYPE_LEVEL_HIGH>;
Marc Zyngierb923ff62015-02-23 17:45:18 +0000799 interrupt-parent = <&intc>;
Philipp Zabel729c8882015-02-23 18:40:13 +0100800 pu-supply = <&reg_pu>;
801 clocks = <&clks IMX6QDL_CLK_GPU3D_CORE>,
802 <&clks IMX6QDL_CLK_GPU3D_SHADER>,
803 <&clks IMX6QDL_CLK_GPU2D_CORE>,
804 <&clks IMX6QDL_CLK_GPU2D_AXI>,
805 <&clks IMX6QDL_CLK_OPENVG_AXI>,
806 <&clks IMX6QDL_CLK_VPU_AXI>;
807 #power-domain-cells = <1>;
Shawn Guo7d740f82011-09-06 13:53:26 +0800808 };
809
Dong Aishengdf37e0c2012-09-05 10:57:14 +0800810 gpr: iomuxc-gpr@020e0000 {
811 compatible = "fsl,imx6q-iomuxc-gpr", "syscon";
812 reg = <0x020e0000 0x38>;
813 };
814
Shawn Guoc56009b2f2013-07-11 13:58:36 +0800815 iomuxc: iomuxc@020e0000 {
816 compatible = "fsl,imx6dl-iomuxc", "fsl,imx6q-iomuxc";
817 reg = <0x020e0000 0x4000>;
Shawn Guoc56009b2f2013-07-11 13:58:36 +0800818 };
819
Lucas Stachc519d572017-01-20 17:44:01 +0100820 ldb: ldb {
Steffen Trumtrar41c04342013-03-28 16:23:35 +0100821 #address-cells = <1>;
822 #size-cells = <0>;
823 compatible = "fsl,imx6q-ldb", "fsl,imx53-ldb";
824 gpr = <&gpr>;
825 status = "disabled";
826
827 lvds-channel@0 {
Philipp Zabel4520e692014-03-05 10:21:01 +0100828 #address-cells = <1>;
829 #size-cells = <0>;
Steffen Trumtrar41c04342013-03-28 16:23:35 +0100830 reg = <0>;
Steffen Trumtrar41c04342013-03-28 16:23:35 +0100831 status = "disabled";
Philipp Zabel4520e692014-03-05 10:21:01 +0100832
833 port@0 {
834 reg = <0>;
835
836 lvds0_mux_0: endpoint {
837 remote-endpoint = <&ipu1_di0_lvds0>;
838 };
839 };
840
841 port@1 {
842 reg = <1>;
843
844 lvds0_mux_1: endpoint {
845 remote-endpoint = <&ipu1_di1_lvds0>;
846 };
847 };
Steffen Trumtrar41c04342013-03-28 16:23:35 +0100848 };
849
850 lvds-channel@1 {
Philipp Zabel4520e692014-03-05 10:21:01 +0100851 #address-cells = <1>;
852 #size-cells = <0>;
Steffen Trumtrar41c04342013-03-28 16:23:35 +0100853 reg = <1>;
Steffen Trumtrar41c04342013-03-28 16:23:35 +0100854 status = "disabled";
Philipp Zabel4520e692014-03-05 10:21:01 +0100855
856 port@0 {
857 reg = <0>;
858
859 lvds1_mux_0: endpoint {
860 remote-endpoint = <&ipu1_di0_lvds1>;
861 };
862 };
863
864 port@1 {
865 reg = <1>;
866
867 lvds1_mux_1: endpoint {
868 remote-endpoint = <&ipu1_di1_lvds1>;
869 };
870 };
Steffen Trumtrar41c04342013-03-28 16:23:35 +0100871 };
872 };
873
Sascha Hauer7b7d6722012-11-15 09:31:52 +0100874 dcic1: dcic@020e4000 {
Shawn Guo7d740f82011-09-06 13:53:26 +0800875 reg = <0x020e4000 0x4000>;
Troy Kisky275c08b2013-11-14 14:02:13 -0700876 interrupts = <0 124 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guo7d740f82011-09-06 13:53:26 +0800877 };
878
Sascha Hauer7b7d6722012-11-15 09:31:52 +0100879 dcic2: dcic@020e8000 {
Shawn Guo7d740f82011-09-06 13:53:26 +0800880 reg = <0x020e8000 0x4000>;
Troy Kisky275c08b2013-11-14 14:02:13 -0700881 interrupts = <0 125 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guo7d740f82011-09-06 13:53:26 +0800882 };
883
Sascha Hauer7b7d6722012-11-15 09:31:52 +0100884 sdma: sdma@020ec000 {
Shawn Guo7d740f82011-09-06 13:53:26 +0800885 compatible = "fsl,imx6q-sdma", "fsl,imx35-sdma";
886 reg = <0x020ec000 0x4000>;
Troy Kisky275c08b2013-11-14 14:02:13 -0700887 interrupts = <0 2 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guo8888f652014-06-15 20:36:50 +0800888 clocks = <&clks IMX6QDL_CLK_SDMA>,
889 <&clks IMX6QDL_CLK_SDMA>;
Shawn Guo0e87e042012-08-22 21:36:28 +0800890 clock-names = "ipg", "ahb";
Huang Shijiefb72bb22013-07-02 10:15:29 +0800891 #dma-cells = <3>;
Fabio Estevamd6b9c592013-01-17 12:13:25 -0200892 fsl,sdma-ram-script-name = "imx/sdma/sdma-imx6q.bin";
Shawn Guo7d740f82011-09-06 13:53:26 +0800893 };
894 };
895
896 aips-bus@02100000 { /* AIPS2 */
897 compatible = "fsl,aips-bus", "simple-bus";
898 #address-cells = <1>;
899 #size-cells = <1>;
900 reg = <0x02100000 0x100000>;
901 ranges;
902
Victoria Milhoand462ce92015-08-05 11:28:44 -0700903 crypto: caam@2100000 {
904 compatible = "fsl,sec-v4.0";
905 fsl,sec-era = <4>;
906 #address-cells = <1>;
907 #size-cells = <1>;
908 reg = <0x2100000 0x10000>;
909 ranges = <0 0x2100000 0x10000>;
Victoria Milhoand462ce92015-08-05 11:28:44 -0700910 clocks = <&clks IMX6QDL_CLK_CAAM_MEM>,
911 <&clks IMX6QDL_CLK_CAAM_ACLK>,
912 <&clks IMX6QDL_CLK_CAAM_IPG>,
913 <&clks IMX6QDL_CLK_EIM_SLOW>;
914 clock-names = "mem", "aclk", "ipg", "emi_slow";
915
916 sec_jr0: jr0@1000 {
917 compatible = "fsl,sec-v4.0-job-ring";
918 reg = <0x1000 0x1000>;
919 interrupts = <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH>;
920 };
921
922 sec_jr1: jr1@2000 {
923 compatible = "fsl,sec-v4.0-job-ring";
924 reg = <0x2000 0x1000>;
925 interrupts = <GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH>;
926 };
Shawn Guo7d740f82011-09-06 13:53:26 +0800927 };
928
929 aipstz@0217c000 { /* AIPSTZ2 */
930 reg = <0x0217c000 0x4000>;
931 };
932
Sascha Hauer7b7d6722012-11-15 09:31:52 +0100933 usbotg: usb@02184000 {
Richard Zhao74bd88f2012-07-12 14:21:41 +0800934 compatible = "fsl,imx6q-usb", "fsl,imx27-usb";
935 reg = <0x02184000 0x200>;
Troy Kisky275c08b2013-11-14 14:02:13 -0700936 interrupts = <0 43 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guo8888f652014-06-15 20:36:50 +0800937 clocks = <&clks IMX6QDL_CLK_USBOH3>;
Richard Zhao74bd88f2012-07-12 14:21:41 +0800938 fsl,usbphy = <&usbphy1>;
Richard Zhao28342c62012-09-14 14:42:45 +0800939 fsl,usbmisc = <&usbmisc 0>;
Peter Chen9493bf52015-09-30 10:17:16 +0800940 ahb-burst-config = <0x0>;
Peter Chen2b1a40e2015-09-30 10:17:17 +0800941 tx-burst-size-dword = <0x10>;
942 rx-burst-size-dword = <0x10>;
Richard Zhao74bd88f2012-07-12 14:21:41 +0800943 status = "disabled";
944 };
945
Sascha Hauer7b7d6722012-11-15 09:31:52 +0100946 usbh1: usb@02184200 {
Richard Zhao74bd88f2012-07-12 14:21:41 +0800947 compatible = "fsl,imx6q-usb", "fsl,imx27-usb";
948 reg = <0x02184200 0x200>;
Troy Kisky275c08b2013-11-14 14:02:13 -0700949 interrupts = <0 40 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guo8888f652014-06-15 20:36:50 +0800950 clocks = <&clks IMX6QDL_CLK_USBOH3>;
Richard Zhao74bd88f2012-07-12 14:21:41 +0800951 fsl,usbphy = <&usbphy2>;
Richard Zhao28342c62012-09-14 14:42:45 +0800952 fsl,usbmisc = <&usbmisc 1>;
Matt Porter3ec481e2015-02-27 09:06:00 -0500953 dr_mode = "host";
Peter Chen9493bf52015-09-30 10:17:16 +0800954 ahb-burst-config = <0x0>;
Peter Chen2b1a40e2015-09-30 10:17:17 +0800955 tx-burst-size-dword = <0x10>;
956 rx-burst-size-dword = <0x10>;
Richard Zhao74bd88f2012-07-12 14:21:41 +0800957 status = "disabled";
958 };
959
Sascha Hauer7b7d6722012-11-15 09:31:52 +0100960 usbh2: usb@02184400 {
Richard Zhao74bd88f2012-07-12 14:21:41 +0800961 compatible = "fsl,imx6q-usb", "fsl,imx27-usb";
962 reg = <0x02184400 0x200>;
Troy Kisky275c08b2013-11-14 14:02:13 -0700963 interrupts = <0 41 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guo8888f652014-06-15 20:36:50 +0800964 clocks = <&clks IMX6QDL_CLK_USBOH3>;
Richard Zhao28342c62012-09-14 14:42:45 +0800965 fsl,usbmisc = <&usbmisc 2>;
Matt Porter3ec481e2015-02-27 09:06:00 -0500966 dr_mode = "host";
Peter Chen9493bf52015-09-30 10:17:16 +0800967 ahb-burst-config = <0x0>;
Peter Chen2b1a40e2015-09-30 10:17:17 +0800968 tx-burst-size-dword = <0x10>;
969 rx-burst-size-dword = <0x10>;
Richard Zhao74bd88f2012-07-12 14:21:41 +0800970 status = "disabled";
971 };
972
Sascha Hauer7b7d6722012-11-15 09:31:52 +0100973 usbh3: usb@02184600 {
Richard Zhao74bd88f2012-07-12 14:21:41 +0800974 compatible = "fsl,imx6q-usb", "fsl,imx27-usb";
975 reg = <0x02184600 0x200>;
Troy Kisky275c08b2013-11-14 14:02:13 -0700976 interrupts = <0 42 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guo8888f652014-06-15 20:36:50 +0800977 clocks = <&clks IMX6QDL_CLK_USBOH3>;
Richard Zhao28342c62012-09-14 14:42:45 +0800978 fsl,usbmisc = <&usbmisc 3>;
Matt Porter3ec481e2015-02-27 09:06:00 -0500979 dr_mode = "host";
Peter Chen9493bf52015-09-30 10:17:16 +0800980 ahb-burst-config = <0x0>;
Peter Chen2b1a40e2015-09-30 10:17:17 +0800981 tx-burst-size-dword = <0x10>;
982 rx-burst-size-dword = <0x10>;
Richard Zhao74bd88f2012-07-12 14:21:41 +0800983 status = "disabled";
984 };
985
Shawn Guo60984bd2013-04-28 09:59:54 +0800986 usbmisc: usbmisc@02184800 {
Richard Zhao28342c62012-09-14 14:42:45 +0800987 #index-cells = <1>;
988 compatible = "fsl,imx6q-usbmisc";
989 reg = <0x02184800 0x200>;
Shawn Guo8888f652014-06-15 20:36:50 +0800990 clocks = <&clks IMX6QDL_CLK_USBOH3>;
Richard Zhao28342c62012-09-14 14:42:45 +0800991 };
992
Sascha Hauer7b7d6722012-11-15 09:31:52 +0100993 fec: ethernet@02188000 {
Shawn Guo7d740f82011-09-06 13:53:26 +0800994 compatible = "fsl,imx6q-fec";
995 reg = <0x02188000 0x4000>;
Troy Kisky454cf8f2013-12-20 11:47:10 -0700996 interrupts-extended =
997 <&intc 0 118 IRQ_TYPE_LEVEL_HIGH>,
998 <&intc 0 119 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guo8888f652014-06-15 20:36:50 +0800999 clocks = <&clks IMX6QDL_CLK_ENET>,
1000 <&clks IMX6QDL_CLK_ENET>,
1001 <&clks IMX6QDL_CLK_ENET_REF>;
Frank Li76298382012-10-30 18:24:57 +00001002 clock-names = "ipg", "ahb", "ptp";
Shawn Guo7d740f82011-09-06 13:53:26 +08001003 status = "disabled";
1004 };
1005
1006 mlb@0218c000 {
1007 reg = <0x0218c000 0x4000>;
Troy Kisky275c08b2013-11-14 14:02:13 -07001008 interrupts = <0 53 IRQ_TYPE_LEVEL_HIGH>,
1009 <0 117 IRQ_TYPE_LEVEL_HIGH>,
1010 <0 126 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guo7d740f82011-09-06 13:53:26 +08001011 };
1012
Sascha Hauer7b7d6722012-11-15 09:31:52 +01001013 usdhc1: usdhc@02190000 {
Shawn Guo7d740f82011-09-06 13:53:26 +08001014 compatible = "fsl,imx6q-usdhc";
1015 reg = <0x02190000 0x4000>;
Troy Kisky275c08b2013-11-14 14:02:13 -07001016 interrupts = <0 22 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guo8888f652014-06-15 20:36:50 +08001017 clocks = <&clks IMX6QDL_CLK_USDHC1>,
1018 <&clks IMX6QDL_CLK_USDHC1>,
1019 <&clks IMX6QDL_CLK_USDHC1>;
Shawn Guo0e87e042012-08-22 21:36:28 +08001020 clock-names = "ipg", "ahb", "per";
Sascha Hauerc104b6a2012-09-25 11:49:33 +02001021 bus-width = <4>;
Shawn Guo7d740f82011-09-06 13:53:26 +08001022 status = "disabled";
1023 };
1024
Sascha Hauer7b7d6722012-11-15 09:31:52 +01001025 usdhc2: usdhc@02194000 {
Shawn Guo7d740f82011-09-06 13:53:26 +08001026 compatible = "fsl,imx6q-usdhc";
1027 reg = <0x02194000 0x4000>;
Troy Kisky275c08b2013-11-14 14:02:13 -07001028 interrupts = <0 23 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guo8888f652014-06-15 20:36:50 +08001029 clocks = <&clks IMX6QDL_CLK_USDHC2>,
1030 <&clks IMX6QDL_CLK_USDHC2>,
1031 <&clks IMX6QDL_CLK_USDHC2>;
Shawn Guo0e87e042012-08-22 21:36:28 +08001032 clock-names = "ipg", "ahb", "per";
Sascha Hauerc104b6a2012-09-25 11:49:33 +02001033 bus-width = <4>;
Shawn Guo7d740f82011-09-06 13:53:26 +08001034 status = "disabled";
1035 };
1036
Sascha Hauer7b7d6722012-11-15 09:31:52 +01001037 usdhc3: usdhc@02198000 {
Shawn Guo7d740f82011-09-06 13:53:26 +08001038 compatible = "fsl,imx6q-usdhc";
1039 reg = <0x02198000 0x4000>;
Troy Kisky275c08b2013-11-14 14:02:13 -07001040 interrupts = <0 24 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guo8888f652014-06-15 20:36:50 +08001041 clocks = <&clks IMX6QDL_CLK_USDHC3>,
1042 <&clks IMX6QDL_CLK_USDHC3>,
1043 <&clks IMX6QDL_CLK_USDHC3>;
Shawn Guo0e87e042012-08-22 21:36:28 +08001044 clock-names = "ipg", "ahb", "per";
Sascha Hauerc104b6a2012-09-25 11:49:33 +02001045 bus-width = <4>;
Shawn Guo7d740f82011-09-06 13:53:26 +08001046 status = "disabled";
1047 };
1048
Sascha Hauer7b7d6722012-11-15 09:31:52 +01001049 usdhc4: usdhc@0219c000 {
Shawn Guo7d740f82011-09-06 13:53:26 +08001050 compatible = "fsl,imx6q-usdhc";
1051 reg = <0x0219c000 0x4000>;
Troy Kisky275c08b2013-11-14 14:02:13 -07001052 interrupts = <0 25 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guo8888f652014-06-15 20:36:50 +08001053 clocks = <&clks IMX6QDL_CLK_USDHC4>,
1054 <&clks IMX6QDL_CLK_USDHC4>,
1055 <&clks IMX6QDL_CLK_USDHC4>;
Shawn Guo0e87e042012-08-22 21:36:28 +08001056 clock-names = "ipg", "ahb", "per";
Sascha Hauerc104b6a2012-09-25 11:49:33 +02001057 bus-width = <4>;
Shawn Guo7d740f82011-09-06 13:53:26 +08001058 status = "disabled";
1059 };
1060
Sascha Hauer7b7d6722012-11-15 09:31:52 +01001061 i2c1: i2c@021a0000 {
Shawn Guo7d740f82011-09-06 13:53:26 +08001062 #address-cells = <1>;
1063 #size-cells = <0>;
Shawn Guo5bdfba22012-09-14 15:19:00 +08001064 compatible = "fsl,imx6q-i2c", "fsl,imx21-i2c";
Shawn Guo7d740f82011-09-06 13:53:26 +08001065 reg = <0x021a0000 0x4000>;
Troy Kisky275c08b2013-11-14 14:02:13 -07001066 interrupts = <0 36 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guo8888f652014-06-15 20:36:50 +08001067 clocks = <&clks IMX6QDL_CLK_I2C1>;
Shawn Guo7d740f82011-09-06 13:53:26 +08001068 status = "disabled";
1069 };
1070
Sascha Hauer7b7d6722012-11-15 09:31:52 +01001071 i2c2: i2c@021a4000 {
Shawn Guo7d740f82011-09-06 13:53:26 +08001072 #address-cells = <1>;
1073 #size-cells = <0>;
Shawn Guo5bdfba22012-09-14 15:19:00 +08001074 compatible = "fsl,imx6q-i2c", "fsl,imx21-i2c";
Shawn Guo7d740f82011-09-06 13:53:26 +08001075 reg = <0x021a4000 0x4000>;
Troy Kisky275c08b2013-11-14 14:02:13 -07001076 interrupts = <0 37 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guo8888f652014-06-15 20:36:50 +08001077 clocks = <&clks IMX6QDL_CLK_I2C2>;
Shawn Guo7d740f82011-09-06 13:53:26 +08001078 status = "disabled";
1079 };
1080
Sascha Hauer7b7d6722012-11-15 09:31:52 +01001081 i2c3: i2c@021a8000 {
Shawn Guo7d740f82011-09-06 13:53:26 +08001082 #address-cells = <1>;
1083 #size-cells = <0>;
Shawn Guo5bdfba22012-09-14 15:19:00 +08001084 compatible = "fsl,imx6q-i2c", "fsl,imx21-i2c";
Shawn Guo7d740f82011-09-06 13:53:26 +08001085 reg = <0x021a8000 0x4000>;
Troy Kisky275c08b2013-11-14 14:02:13 -07001086 interrupts = <0 38 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guo8888f652014-06-15 20:36:50 +08001087 clocks = <&clks IMX6QDL_CLK_I2C3>;
Shawn Guo7d740f82011-09-06 13:53:26 +08001088 status = "disabled";
1089 };
1090
1091 romcp@021ac000 {
1092 reg = <0x021ac000 0x4000>;
1093 };
1094
Sascha Hauer7b7d6722012-11-15 09:31:52 +01001095 mmdc0: mmdc@021b0000 { /* MMDC0 */
Shawn Guo7d740f82011-09-06 13:53:26 +08001096 compatible = "fsl,imx6q-mmdc";
1097 reg = <0x021b0000 0x4000>;
1098 };
1099
Sascha Hauer7b7d6722012-11-15 09:31:52 +01001100 mmdc1: mmdc@021b4000 { /* MMDC1 */
Shawn Guo7d740f82011-09-06 13:53:26 +08001101 reg = <0x021b4000 0x4000>;
1102 };
1103
Huang Shijie05e3f8e2013-05-28 14:20:09 +08001104 weim: weim@021b8000 {
Joshua Clayton1be81ea2016-11-01 16:51:45 -07001105 #address-cells = <2>;
1106 #size-cells = <1>;
Huang Shijie05e3f8e2013-05-28 14:20:09 +08001107 compatible = "fsl,imx6q-weim";
Shawn Guo7d740f82011-09-06 13:53:26 +08001108 reg = <0x021b8000 0x4000>;
Troy Kisky275c08b2013-11-14 14:02:13 -07001109 interrupts = <0 14 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guo8888f652014-06-15 20:36:50 +08001110 clocks = <&clks IMX6QDL_CLK_EIM_SLOW>;
Joshua Clayton1be81ea2016-11-01 16:51:45 -07001111 fsl,weim-cs-gpr = <&gpr>;
Fabio Estevam116dad72016-12-30 08:09:03 -02001112 status = "disabled";
Shawn Guo7d740f82011-09-06 13:53:26 +08001113 };
1114
Shawn Guo3fe63732013-07-16 21:16:36 +08001115 ocotp: ocotp@021bc000 {
1116 compatible = "fsl,imx6q-ocotp", "syscon";
Shawn Guo7d740f82011-09-06 13:53:26 +08001117 reg = <0x021bc000 0x4000>;
Peng Fanb8ecd882016-04-21 01:26:15 +08001118 clocks = <&clks IMX6QDL_CLK_IIM>;
Shawn Guo7d740f82011-09-06 13:53:26 +08001119 };
1120
Shawn Guo7d740f82011-09-06 13:53:26 +08001121 tzasc@021d0000 { /* TZASC1 */
1122 reg = <0x021d0000 0x4000>;
Troy Kisky275c08b2013-11-14 14:02:13 -07001123 interrupts = <0 108 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guo7d740f82011-09-06 13:53:26 +08001124 };
1125
1126 tzasc@021d4000 { /* TZASC2 */
1127 reg = <0x021d4000 0x4000>;
Troy Kisky275c08b2013-11-14 14:02:13 -07001128 interrupts = <0 109 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guo7d740f82011-09-06 13:53:26 +08001129 };
1130
Sascha Hauer7b7d6722012-11-15 09:31:52 +01001131 audmux: audmux@021d8000 {
Richard Zhaof965cd52012-05-02 10:32:26 +08001132 compatible = "fsl,imx6q-audmux", "fsl,imx31-audmux";
Shawn Guo7d740f82011-09-06 13:53:26 +08001133 reg = <0x021d8000 0x4000>;
Richard Zhaof965cd52012-05-02 10:32:26 +08001134 status = "disabled";
Shawn Guo7d740f82011-09-06 13:53:26 +08001135 };
1136
Troy Kisky5e0c7cd2013-11-14 14:02:08 -07001137 mipi_csi: mipi@021dc000 {
Shawn Guo7d740f82011-09-06 13:53:26 +08001138 reg = <0x021dc000 0x4000>;
1139 };
1140
Philipp Zabel4520e692014-03-05 10:21:01 +01001141 mipi_dsi: mipi@021e0000 {
1142 #address-cells = <1>;
1143 #size-cells = <0>;
Shawn Guo7d740f82011-09-06 13:53:26 +08001144 reg = <0x021e0000 0x4000>;
Philipp Zabel4520e692014-03-05 10:21:01 +01001145 status = "disabled";
1146
Liu Ying70c26522015-02-12 14:01:31 +08001147 ports {
1148 #address-cells = <1>;
1149 #size-cells = <0>;
Philipp Zabel4520e692014-03-05 10:21:01 +01001150
Liu Ying70c26522015-02-12 14:01:31 +08001151 port@0 {
1152 reg = <0>;
1153
1154 mipi_mux_0: endpoint {
1155 remote-endpoint = <&ipu1_di0_mipi>;
1156 };
Philipp Zabel4520e692014-03-05 10:21:01 +01001157 };
Philipp Zabel4520e692014-03-05 10:21:01 +01001158
Liu Ying70c26522015-02-12 14:01:31 +08001159 port@1 {
1160 reg = <1>;
Philipp Zabel4520e692014-03-05 10:21:01 +01001161
Liu Ying70c26522015-02-12 14:01:31 +08001162 mipi_mux_1: endpoint {
1163 remote-endpoint = <&ipu1_di1_mipi>;
1164 };
Philipp Zabel4520e692014-03-05 10:21:01 +01001165 };
1166 };
Shawn Guo7d740f82011-09-06 13:53:26 +08001167 };
1168
1169 vdoa@021e4000 {
Philipp Zabel67c5900652017-01-20 12:00:19 -02001170 compatible = "fsl,imx6q-vdoa";
Shawn Guo7d740f82011-09-06 13:53:26 +08001171 reg = <0x021e4000 0x4000>;
Troy Kisky275c08b2013-11-14 14:02:13 -07001172 interrupts = <0 18 IRQ_TYPE_LEVEL_HIGH>;
Philipp Zabel67c5900652017-01-20 12:00:19 -02001173 clocks = <&clks IMX6QDL_CLK_VDOA>;
Shawn Guo7d740f82011-09-06 13:53:26 +08001174 };
1175
Shawn Guo0c456cf2012-04-02 14:39:26 +08001176 uart2: serial@021e8000 {
Shawn Guo7d740f82011-09-06 13:53:26 +08001177 compatible = "fsl,imx6q-uart", "fsl,imx21-uart";
1178 reg = <0x021e8000 0x4000>;
Troy Kisky275c08b2013-11-14 14:02:13 -07001179 interrupts = <0 27 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guo8888f652014-06-15 20:36:50 +08001180 clocks = <&clks IMX6QDL_CLK_UART_IPG>,
1181 <&clks IMX6QDL_CLK_UART_SERIAL>;
Shawn Guo0e87e042012-08-22 21:36:28 +08001182 clock-names = "ipg", "per";
Huang Shijie72a5ceb2013-07-12 18:02:09 +08001183 dmas = <&sdma 27 4 0>, <&sdma 28 4 0>;
1184 dma-names = "rx", "tx";
Shawn Guo7d740f82011-09-06 13:53:26 +08001185 status = "disabled";
1186 };
1187
Shawn Guo0c456cf2012-04-02 14:39:26 +08001188 uart3: serial@021ec000 {
Shawn Guo7d740f82011-09-06 13:53:26 +08001189 compatible = "fsl,imx6q-uart", "fsl,imx21-uart";
1190 reg = <0x021ec000 0x4000>;
Troy Kisky275c08b2013-11-14 14:02:13 -07001191 interrupts = <0 28 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guo8888f652014-06-15 20:36:50 +08001192 clocks = <&clks IMX6QDL_CLK_UART_IPG>,
1193 <&clks IMX6QDL_CLK_UART_SERIAL>;
Shawn Guo0e87e042012-08-22 21:36:28 +08001194 clock-names = "ipg", "per";
Huang Shijie72a5ceb2013-07-12 18:02:09 +08001195 dmas = <&sdma 29 4 0>, <&sdma 30 4 0>;
1196 dma-names = "rx", "tx";
Shawn Guo7d740f82011-09-06 13:53:26 +08001197 status = "disabled";
1198 };
1199
Shawn Guo0c456cf2012-04-02 14:39:26 +08001200 uart4: serial@021f0000 {
Shawn Guo7d740f82011-09-06 13:53:26 +08001201 compatible = "fsl,imx6q-uart", "fsl,imx21-uart";
1202 reg = <0x021f0000 0x4000>;
Troy Kisky275c08b2013-11-14 14:02:13 -07001203 interrupts = <0 29 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guo8888f652014-06-15 20:36:50 +08001204 clocks = <&clks IMX6QDL_CLK_UART_IPG>,
1205 <&clks IMX6QDL_CLK_UART_SERIAL>;
Shawn Guo0e87e042012-08-22 21:36:28 +08001206 clock-names = "ipg", "per";
Huang Shijie72a5ceb2013-07-12 18:02:09 +08001207 dmas = <&sdma 31 4 0>, <&sdma 32 4 0>;
1208 dma-names = "rx", "tx";
Shawn Guo7d740f82011-09-06 13:53:26 +08001209 status = "disabled";
1210 };
1211
Shawn Guo0c456cf2012-04-02 14:39:26 +08001212 uart5: serial@021f4000 {
Shawn Guo7d740f82011-09-06 13:53:26 +08001213 compatible = "fsl,imx6q-uart", "fsl,imx21-uart";
1214 reg = <0x021f4000 0x4000>;
Troy Kisky275c08b2013-11-14 14:02:13 -07001215 interrupts = <0 30 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guo8888f652014-06-15 20:36:50 +08001216 clocks = <&clks IMX6QDL_CLK_UART_IPG>,
1217 <&clks IMX6QDL_CLK_UART_SERIAL>;
Shawn Guo0e87e042012-08-22 21:36:28 +08001218 clock-names = "ipg", "per";
Huang Shijie72a5ceb2013-07-12 18:02:09 +08001219 dmas = <&sdma 33 4 0>, <&sdma 34 4 0>;
1220 dma-names = "rx", "tx";
Shawn Guo7d740f82011-09-06 13:53:26 +08001221 status = "disabled";
1222 };
1223 };
Sascha Hauer91660d72012-11-12 15:52:21 +01001224
1225 ipu1: ipu@02400000 {
Philipp Zabel4520e692014-03-05 10:21:01 +01001226 #address-cells = <1>;
1227 #size-cells = <0>;
Sascha Hauer91660d72012-11-12 15:52:21 +01001228 compatible = "fsl,imx6q-ipu";
1229 reg = <0x02400000 0x400000>;
Troy Kisky275c08b2013-11-14 14:02:13 -07001230 interrupts = <0 6 IRQ_TYPE_LEVEL_HIGH>,
1231 <0 5 IRQ_TYPE_LEVEL_HIGH>;
Shawn Guo8888f652014-06-15 20:36:50 +08001232 clocks = <&clks IMX6QDL_CLK_IPU1>,
1233 <&clks IMX6QDL_CLK_IPU1_DI0>,
1234 <&clks IMX6QDL_CLK_IPU1_DI1>;
Sascha Hauer91660d72012-11-12 15:52:21 +01001235 clock-names = "bus", "di0", "di1";
Philipp Zabel09ebf362013-03-28 17:35:20 +01001236 resets = <&src 2>;
Philipp Zabel4520e692014-03-05 10:21:01 +01001237
Philipp Zabelc0470c32014-05-27 17:26:37 +02001238 ipu1_csi0: port@0 {
1239 reg = <0>;
1240 };
1241
1242 ipu1_csi1: port@1 {
1243 reg = <1>;
1244 };
1245
Philipp Zabel4520e692014-03-05 10:21:01 +01001246 ipu1_di0: port@2 {
1247 #address-cells = <1>;
1248 #size-cells = <0>;
1249 reg = <2>;
1250
Joshua Clayton416196c2016-04-25 18:09:33 -07001251 ipu1_di0_disp0: disp0-endpoint {
Philipp Zabel4520e692014-03-05 10:21:01 +01001252 };
1253
Joshua Clayton416196c2016-04-25 18:09:33 -07001254 ipu1_di0_hdmi: hdmi-endpoint {
Philipp Zabel4520e692014-03-05 10:21:01 +01001255 remote-endpoint = <&hdmi_mux_0>;
1256 };
1257
Joshua Clayton416196c2016-04-25 18:09:33 -07001258 ipu1_di0_mipi: mipi-endpoint {
Philipp Zabel4520e692014-03-05 10:21:01 +01001259 remote-endpoint = <&mipi_mux_0>;
1260 };
1261
Joshua Clayton416196c2016-04-25 18:09:33 -07001262 ipu1_di0_lvds0: lvds0-endpoint {
Philipp Zabel4520e692014-03-05 10:21:01 +01001263 remote-endpoint = <&lvds0_mux_0>;
1264 };
1265
Joshua Clayton416196c2016-04-25 18:09:33 -07001266 ipu1_di0_lvds1: lvds1-endpoint {
Philipp Zabel4520e692014-03-05 10:21:01 +01001267 remote-endpoint = <&lvds1_mux_0>;
1268 };
1269 };
1270
1271 ipu1_di1: port@3 {
1272 #address-cells = <1>;
1273 #size-cells = <0>;
1274 reg = <3>;
1275
Juergen Borleisf255f892016-05-31 16:49:37 +02001276 ipu1_di1_disp1: disp1-endpoint {
Philipp Zabel4520e692014-03-05 10:21:01 +01001277 };
1278
Joshua Clayton416196c2016-04-25 18:09:33 -07001279 ipu1_di1_hdmi: hdmi-endpoint {
Philipp Zabel4520e692014-03-05 10:21:01 +01001280 remote-endpoint = <&hdmi_mux_1>;
1281 };
1282
Joshua Clayton416196c2016-04-25 18:09:33 -07001283 ipu1_di1_mipi: mipi-endpoint {
Philipp Zabel4520e692014-03-05 10:21:01 +01001284 remote-endpoint = <&mipi_mux_1>;
1285 };
1286
Joshua Clayton416196c2016-04-25 18:09:33 -07001287 ipu1_di1_lvds0: lvds0-endpoint {
Philipp Zabel4520e692014-03-05 10:21:01 +01001288 remote-endpoint = <&lvds0_mux_1>;
1289 };
1290
Joshua Clayton416196c2016-04-25 18:09:33 -07001291 ipu1_di1_lvds1: lvds1-endpoint {
Philipp Zabel4520e692014-03-05 10:21:01 +01001292 remote-endpoint = <&lvds1_mux_1>;
1293 };
1294 };
Sascha Hauer91660d72012-11-12 15:52:21 +01001295 };
Shawn Guo7d740f82011-09-06 13:53:26 +08001296 };
1297};