2 * Copyright (c) 2013 MundoReader S.L.
3 * Author: Heiko Stuebner <heiko@sntech.de>
5 * This program is free software; you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License as published by
7 * the Free Software Foundation; either version 2 of the License, or
8 * (at your option) any later version.
10 * This program is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 * GNU General Public License for more details.
16 #include <dt-bindings/interrupt-controller/irq.h>
17 #include <dt-bindings/interrupt-controller/arm-gic.h>
18 #include "skeleton.dtsi"
21 interrupt-parent = <&gic>;
37 compatible = "fixed-clock";
38 clock-frequency = <24000000>;
40 clock-output-names = "xin24m";
43 L2: l2-cache-controller@10138000 {
44 compatible = "arm,pl310-cache";
45 reg = <0x10138000 0x1000>;
51 compatible = "arm,cortex-a9-scu";
52 reg = <0x1013c000 0x100>;
55 global_timer: global-timer@1013c200 {
56 compatible = "arm,cortex-a9-global-timer";
57 reg = <0x1013c200 0x20>;
58 interrupts = <GIC_PPI 11 0x304>;
59 clocks = <&cru CORE_PERI>;
62 local_timer: local-timer@1013c600 {
63 compatible = "arm,cortex-a9-twd-timer";
64 reg = <0x1013c600 0x20>;
65 interrupts = <GIC_PPI 13 0x304>;
66 clocks = <&cru CORE_PERI>;
69 gic: interrupt-controller@1013d000 {
70 compatible = "arm,cortex-a9-gic";
72 #interrupt-cells = <3>;
73 reg = <0x1013d000 0x1000>,
77 uart0: serial@10124000 {
78 compatible = "snps,dw-apb-uart";
79 reg = <0x10124000 0x400>;
80 interrupts = <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>;
83 clock-names = "baudclk", "apb_pclk";
84 clocks = <&cru SCLK_UART0>, <&cru PCLK_UART0>;
88 uart1: serial@10126000 {
89 compatible = "snps,dw-apb-uart";
90 reg = <0x10126000 0x400>;
91 interrupts = <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>;
94 clock-names = "baudclk", "apb_pclk";
95 clocks = <&cru SCLK_UART1>, <&cru PCLK_UART1>;
99 usb_otg: usb@10180000 {
100 compatible = "rockchip,rk3066-usb", "snps,dwc2";
101 reg = <0x10180000 0x40000>;
102 interrupts = <GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH>;
103 clocks = <&cru HCLK_OTG0>;
108 usb_host: usb@101c0000 {
109 compatible = "snps,dwc2";
110 reg = <0x101c0000 0x40000>;
111 interrupts = <GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH>;
112 clocks = <&cru HCLK_OTG1>;
117 mmc0: dwmmc@10214000 {
118 compatible = "rockchip,rk2928-dw-mshc";
119 reg = <0x10214000 0x1000>;
120 interrupts = <GIC_SPI 23 IRQ_TYPE_LEVEL_HIGH>;
122 clocks = <&cru HCLK_SDMMC>, <&cru SCLK_SDMMC>;
123 clock-names = "biu", "ciu";
128 mmc1: dwmmc@10218000 {
129 compatible = "rockchip,rk2928-dw-mshc";
130 reg = <0x10218000 0x1000>;
131 interrupts = <GIC_SPI 24 IRQ_TYPE_LEVEL_HIGH>;
133 clocks = <&cru HCLK_SDIO>, <&cru SCLK_SDIO>;
134 clock-names = "biu", "ciu";
139 emmc: dwmmc@1021c000 {
140 compatible = "rockchip,rk2928-dw-mshc";
141 reg = <0x1021c000 0x1000>;
142 interrupts = <GIC_SPI 25 IRQ_TYPE_LEVEL_HIGH>;
144 clocks = <&cru HCLK_EMMC>, <&cru SCLK_EMMC>;
145 clock-names = "biu", "ciu";
151 compatible = "rockchip,rk3066-pmu", "syscon";
152 reg = <0x20004000 0x100>;
156 compatible = "syscon";
157 reg = <0x20008000 0x200>;
161 compatible = "rockchip,rk3066-i2c";
162 reg = <0x2002d000 0x1000>;
163 interrupts = <GIC_SPI 40 IRQ_TYPE_LEVEL_HIGH>;
164 #address-cells = <1>;
167 rockchip,grf = <&grf>;
170 clocks = <&cru PCLK_I2C0>;
176 compatible = "rockchip,rk3066-i2c";
177 reg = <0x2002f000 0x1000>;
178 interrupts = <GIC_SPI 41 IRQ_TYPE_LEVEL_HIGH>;
179 #address-cells = <1>;
182 rockchip,grf = <&grf>;
184 clocks = <&cru PCLK_I2C1>;
191 compatible = "rockchip,rk2928-pwm";
192 reg = <0x20030000 0x10>;
194 clocks = <&cru PCLK_PWM01>;
199 compatible = "rockchip,rk2928-pwm";
200 reg = <0x20030010 0x10>;
202 clocks = <&cru PCLK_PWM01>;
206 wdt: watchdog@2004c000 {
207 compatible = "snps,dw-wdt";
208 reg = <0x2004c000 0x100>;
209 clocks = <&cru PCLK_WDT>;
210 interrupts = <GIC_SPI 51 IRQ_TYPE_LEVEL_HIGH>;
215 compatible = "rockchip,rk2928-pwm";
216 reg = <0x20050020 0x10>;
218 clocks = <&cru PCLK_PWM23>;
223 compatible = "rockchip,rk2928-pwm";
224 reg = <0x20050030 0x10>;
226 clocks = <&cru PCLK_PWM23>;
231 compatible = "rockchip,rk3066-i2c";
232 reg = <0x20056000 0x1000>;
233 interrupts = <GIC_SPI 42 IRQ_TYPE_LEVEL_HIGH>;
234 #address-cells = <1>;
237 rockchip,grf = <&grf>;
239 clocks = <&cru PCLK_I2C2>;
246 compatible = "rockchip,rk3066-i2c";
247 reg = <0x2005a000 0x1000>;
248 interrupts = <GIC_SPI 43 IRQ_TYPE_LEVEL_HIGH>;
249 #address-cells = <1>;
252 rockchip,grf = <&grf>;
254 clocks = <&cru PCLK_I2C3>;
261 compatible = "rockchip,rk3066-i2c";
262 reg = <0x2005e000 0x1000>;
263 interrupts = <GIC_SPI 52 IRQ_TYPE_LEVEL_HIGH>;
264 #address-cells = <1>;
267 rockchip,grf = <&grf>;
269 clocks = <&cru PCLK_I2C4>;
275 uart2: serial@20064000 {
276 compatible = "snps,dw-apb-uart";
277 reg = <0x20064000 0x400>;
278 interrupts = <GIC_SPI 36 IRQ_TYPE_LEVEL_HIGH>;
281 clock-names = "baudclk", "apb_pclk";
282 clocks = <&cru SCLK_UART2>, <&cru PCLK_UART2>;
286 uart3: serial@20068000 {
287 compatible = "snps,dw-apb-uart";
288 reg = <0x20068000 0x400>;
289 interrupts = <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>;
292 clock-names = "baudclk", "apb_pclk";
293 clocks = <&cru SCLK_UART3>, <&cru PCLK_UART3>;
297 saradc: saradc@2006c000 {
298 compatible = "rockchip,saradc";
299 reg = <0x2006c000 0x100>;
300 interrupts = <GIC_SPI 26 IRQ_TYPE_LEVEL_HIGH>;
301 #io-channel-cells = <1>;
302 clocks = <&cru SCLK_SARADC>, <&cru PCLK_SARADC>;
303 clock-names = "saradc", "apb_pclk";
308 compatible = "rockchip,rk3066-spi";
309 clocks = <&cru SCLK_SPI0>, <&cru PCLK_SPI0>;
310 clock-names = "spiclk", "apb_pclk";
311 interrupts = <GIC_SPI 38 IRQ_TYPE_LEVEL_HIGH>;
312 reg = <0x20070000 0x1000>;
313 #address-cells = <1>;
319 compatible = "rockchip,rk3066-spi";
320 clocks = <&cru SCLK_SPI1>, <&cru PCLK_SPI1>;
321 clock-names = "spiclk", "apb_pclk";
322 interrupts = <GIC_SPI 39 IRQ_TYPE_LEVEL_HIGH>;
323 reg = <0x20074000 0x1000>;
324 #address-cells = <1>;