1 #include <dt-bindings/interrupt-controller/arm-gic.h>
2 #include "skeleton.dtsi"
3 #include "rk3288-pinctrl.dtsi"
6 compatible = "rockchip,rk3288";
7 interrupt-parent = <&gic>;
24 compatible = "arm,cortex-a15";
29 compatible = "arm,cortex-a15";
34 compatible = "arm,cortex-a15";
39 compatible = "arm,cortex-a15";
44 gic: interrupt-controller@ffc01000 {
45 compatible = "arm,cortex-a15-gic";
47 #interrupt-cells = <3>;
49 reg = <0xffc01000 0x1000>,
54 compatible = "arm,armv7-timer";
55 interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>,
56 <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>,
57 <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>,
58 <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>;
59 clock-frequency = <24000000>;
63 compatible = "rockchip,timer";
64 reg = <0xff810000 0x20>;
65 interrupts = <GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH>;
66 rockchip,broadcast = <1>;
70 compatible = "rockchip,timer";
71 reg = <0xff810020 0x20>;
72 interrupts = <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>;
73 rockchip,clocksource = <1>;
74 rockchip,count-up = <1>;
77 uart_dbg: serial@ff690000 {
78 compatible = "rockchip,serial";
79 reg = <0xff690000 0x100>;
80 interrupts = <GIC_SPI 57 IRQ_TYPE_LEVEL_HIGH>;
81 clock-frequency = <24000000>;
88 compatible = "rockchip,fiq-debugger";
89 rockchip,serial-id = <2>;
90 rockchip,signal-irq = <106>;
91 rockchip,wake-irq = <0>;
98 compatible = "rockchip,rk30-i2c";
99 reg = <0xff650000 0x1000>;
100 interrupts = <GIC_SPI 60 IRQ_TYPE_LEVEL_HIGH>;
101 #address-cells = <1>;
103 //pinctrl-names = "default", "gpio";
104 //pinctrl-0 = <&i2c0_sda &i2c0_scl>;
105 //pinctrl-1 = <&i2c0_gpio>;
106 //gpios = <&gpio0 GPIO_B7 GPIO_ACTIVE_LOW>, <&gpio0 GPIO_C0 GPIO_ACTIVE_LOW>;
107 //clocks = <&clk_gates8 4>;
108 rockchip,check-idle = <1>;
113 compatible = "rockchip,rk30-i2c";
114 reg = <0xff140000 0x1000>;
115 interrupts = <GIC_SPI 62 IRQ_TYPE_LEVEL_HIGH>;
116 #address-cells = <1>;
118 //pinctrl-names = "default", "gpio";
119 //pinctrl-0 = <&i2c1_sda &i2c1_scl>;
120 //pinctrl-1 = <&i2c1_gpio>;
121 //gpios = <&gpio8 GPIO_A4 GPIO_ACTIVE_LOW>, <&gpio8 GPIO_A5 GPIO_ACTIVE_LOW>;
122 //clocks = <&clk_gates8 5>;
123 rockchip,check-idle = <1>;
130 compatible = "rockchip,rk30-i2c";
131 reg = <0xff660000 0x1000>;
132 interrupts = <GIC_SPI 61 IRQ_TYPE_LEVEL_HIGH>;
133 #address-cells = <1>;
135 //pinctrl-names = "default", "gpio";
136 //pinctrl-0 = <&i2c2_sda &i2c2_scl>;
137 //pinctrl-1 = <&i2c2_gpio>;
138 //gpios = <&gpio6 GPIO_B1 GPIO_ACTIVE_LOW>, <&gpio6 GPIO_B2 GPIO_ACTIVE_LOW>;
139 //clocks = <&clk_gates8 6>;
140 rockchip,check-idle = <1>;
145 compatible = "rockchip,rk30-i2c";
146 reg = <0xff150000 0x1000>;
147 interrupts = <GIC_SPI 63 IRQ_TYPE_LEVEL_HIGH>;
148 #address-cells = <1>;
150 //pinctrl-names = "default", "gpio";
151 //pinctrl-0 = <&i2c2_sda &i2c2_scl>;
152 //pinctrl-1 = <&i2c2_gpio>;
153 //gpios = <&gpio2 GPIO_C1 GPIO_ACTIVE_LOW>, <&gpio2 GPIO_C0 GPIO_ACTIVE_LOW>;
154 //clocks = <&clk_gates8 6>;
155 rockchip,check-idle = <1>;
160 compatible = "rockchip,rk30-i2c";
161 reg = <0xff160000 0x1000>;
162 interrupts = <GIC_SPI 64 IRQ_TYPE_LEVEL_HIGH>;
163 #address-cells = <1>;
165 //pinctrl-names = "default", "gpio";
166 //pinctrl-0 = <&i2c3_sda &i2c3_scl>;
167 //pinctrl-1 = <&i2c3_gpio>;
168 //gpios = <&gpio7 GPIO_C1 GPIO_ACTIVE_LOW>, <&gpio7 GPIO_C2 GPIO_ACTIVE_LOW>;
169 //clocks = <&clk_gates8 7>;
170 rockchip,check-idle = <1>;
176 compatible = "rockchip,rk30-i2c";
177 reg = <0xff170000 0x1000>;
178 interrupts = <GIC_SPI 65 IRQ_TYPE_LEVEL_HIGH>;
179 #address-cells = <1>;
181 //pinctrl-names = "default", "gpio";
182 //pinctrl-0 = <&i2c4_sda &i2c4_scl>;
183 //pinctrl-1 = <&i2c4_gpio>;
184 //gpios = <&gpio7 GPIO_C3 GPIO_ACTIVE_LOW>, <&gpio7 GPIO_C4 GPIO_ACTIVE_LOW>;
185 //clocks = <&clk_gates8 8>;
186 rockchip,check-idle = <1>;
191 compatible = "rockchip,rk32-edp";
192 reg = <0xff970000 0x4000>;
193 interrupts = <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>;
198 compatible = "rockchip,rk3288-hdmi";
199 reg = <0xff980000 0x20000>;
200 interrupts = <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>;
201 rockchip,hdmi_lcdc_source = <1>;
202 pinctrl-names = "default", "gpio";
203 pinctrl-0 = <&i2c5_sda &i2c5_scl>;
204 pinctrl-1 = <&i2c5_gpio>;
209 compatible = "rockchip,saradc";
210 reg = <0xff100000 0x100>;
211 interrupts = <GIC_SPI 36 IRQ_TYPE_LEVEL_HIGH>;
212 #io-channel-cells = <1>;
214 rockchip,adc-vref = <1800>;
215 clock-frequency = <1000000>;
216 clock-names = "saradc", "pclk_saradc";
221 compatible = "rockchip,rga";
222 reg = <0xff920000 0x1000>;
223 interrupts = <GIC_SPI 18 IRQ_TYPE_LEVEL_HIGH>;
224 clock-names = "hclk_rga", "aclk_rga";
227 i2s: rockchip-i2s@0xff890000 {
228 compatible = "rockchip-i2s";
229 reg = <0xff890000 0x10000>;
231 // clocks = <&clk_i2s>;
232 // clock-names = "i2s_clk","i2s_mclk";
233 interrupts = <GIC_SPI 85 IRQ_TYPE_LEVEL_HIGH>;
234 // dmas = <&pdma0 0>,
237 // dma-names = "tx", "rx";
238 // pinctrl-names = "default", "sleep";
239 // pinctrl-0 = <&i2s0_mclk &i2s0_sclk &i2s0_lrckrx &i2s0_lrcktx &i2s0_sdi &i2s0_sdo0 &i2s0_sdo1 &i2s0_sdo2 &i2s0_sdo3>;
240 // pinctrl-1 = <&i2s0_gpio>;
243 spdif: rockchip-spdif@0xff8b0000 {
244 compatible = "rockchip-spdif";
245 reg = <0xff8b0000 0x10000>; //8channel
246 //reg = <ff880000 0x2000>;//2channel
247 // clocks = <&clk_spdif>;
248 // clock-names = "spdif_mclk";
249 interrupts = <GIC_SPI 86 IRQ_TYPE_LEVEL_HIGH>;
250 // dmas = <&pdma0 8>;
253 // pinctrl-names = "default";
254 // pinctrl-0 = <&spdif_tx>;
257 compatible = "rockchip,ion";
258 #address-cells = <1>;
260 rockchip,ion-heap@1 { /* CMA HEAP */
263 rockchip,ion-heap@3 { /* SYSTEM HEAP */
269 compatible = "rockchip,rk_mmc";
270 reg = <0xff0c0000 0x4000>;
271 interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>; /*irq=64*/
272 #address-cells = <1>;
274 //pinctrl-names = "default","suspend";
275 //pinctrl-0 = <&sdmmc0_clk &sdmmc0_cmd &sdmmc0_cd &sdmmc0_wp &sdmmc0_pwr &sdmmc0_bus1 &sdmmc0_bus4>;
276 //pinctrl-1 = <&sd0_cd_gpio>; //for int gpio?
277 //clocks = <&clk_gatesX XX> , <&clk_gatesY YY>;
278 //clock-names = "hclk_mmc","mmc";
279 clock-frequency = <50000000>;
280 clock-freq-min-max = <400000 50000000>;
284 card-detect-delay = <200>;
285 pwr-gpios = <&gpio3 GPIO_A1 GPIO_ACTIVE_LOW>; /*pwr_en = GPIO3_A1*/
286 fifo-depth = <0x100>;
287 emmc-compatible = <0>;
291 sdio0: mshc@ff0d0000 {
292 compatible = "rockchip,rk_mmc";
293 reg = <0xff0d0000 0x4000>;
294 interrupts = <GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>; /*irq=65*/
295 #address-cells = <1>;
297 //pinctrl-names = "default";
298 //pinctrl-0 = <&sd1_clk &sd1_cmd &sd1_cd &sd1_wp &sd1_bus1 &sd1_bus4>;
299 //clocks = <&clk_gatesX XX> , <&clk_gatesY YY>;
300 //clock-names = "hclk_sdio0","sdio0";
301 clock-frequency = <50000000>;
302 clock-freq-min-max = <400000 50000000>;
305 fifo-depth = <0x100>;
306 emmc-compatible = <0>;
310 sdio1: mshc@ff0e0000 {
311 compatible = "rockchip,rk_mmc";
312 reg = <0xff0e0000 0x4000>;
313 interrupts = <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>; /*irq=66*/
314 #address-cells = <1>;
316 //pinctrl-names = "default";
317 //pinctrl-0 = <&sd1_clk &sd1_cmd &sd1_cd &sd1_wp &sd1_bus1 &sd1_bus4>;
318 //clocks = <&clk_gatesX XX> , <&clk_gatesY YY>;
319 //clock-names = "hclk_sdio1","sdio1";
320 clock-frequency = <50000000>;
321 clock-freq-min-max = <400000 50000000>;
324 fifo-depth = <0x100>;
325 emmc-compatible = <0>;
329 emmc: mshc@ff0f0000 {
330 compatible = "rockchip,rk_mmc";
331 reg = <0xff0f0000 0x4000>;
332 interrupts = <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>; /*irq=67*/
333 #address-cells = <1>;
335 //pinctrl-names = "default";
336 //pinctrl-0 = <&sd1_clk &sd1_cmd &sd1_cd &sd1_wp &sd1_bus1 &sd1_bus4>;
337 //clocks = <&clk_gatesX XX> , <&clk_gatesY YY>;
338 //clock-names = "hclk_sdio1","sdio1";
339 clock-frequency = <50000000>;
340 clock-freq-min-max = <400000 50000000>;
343 fifo-depth = <0x100>;
344 emmc-compatible = <1>;