rk3xxx.dtsi 3.5 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
/*
 * Copyright (c) 2013 MundoReader S.L.
 * Author: Heiko Stuebner <heiko@sntech.de>
 *
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation; either version 2 of the License, or
 * (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 */

#include <dt-bindings/interrupt-controller/irq.h>
#include <dt-bindings/interrupt-controller/arm-gic.h>
#include "skeleton.dtsi"

/ {
	interrupt-parent = <&gic>;

23 24 25 26 27 28 29
	xin24m: oscillator {
		compatible = "fixed-clock";
		clock-frequency = <24000000>;
		#clock-cells = <0>;
		clock-output-names = "xin24m";
	};

30 31 32 33 34 35
	soc {
		#address-cells = <1>;
		#size-cells = <1>;
		compatible = "simple-bus";
		ranges;

36 37 38 39 40
		scu@1013c000 {
			compatible = "arm,cortex-a9-scu";
			reg = <0x1013c000 0x100>;
		};

41 42
		pmu: pmu@20004000 {
			compatible = "rockchip,rk3066-pmu", "syscon";
43 44 45
			reg = <0x20004000 0x100>;
		};

46 47 48 49 50
		grf: grf@20008000 {
			compatible = "syscon";
			reg = <0x20008000 0x200>;
		};

51 52 53 54 55 56 57 58 59 60 61 62 63 64 65
		gic: interrupt-controller@1013d000 {
			compatible = "arm,cortex-a9-gic";
			interrupt-controller;
			#interrupt-cells = <3>;
			reg = <0x1013d000 0x1000>,
			      <0x1013c100 0x0100>;
		};

		L2: l2-cache-controller@10138000 {
			compatible = "arm,pl310-cache";
			reg = <0x10138000 0x1000>;
			cache-unified;
			cache-level = <2>;
		};

66 67 68 69
		global-timer@1013c200 {
			compatible = "arm,cortex-a9-global-timer";
			reg = <0x1013c200 0x20>;
			interrupts = <GIC_PPI 11 0x304>;
70
			clocks = <&cru CORE_PERI>;
71 72
		};

73 74 75 76
		local-timer@1013c600 {
			compatible = "arm,cortex-a9-twd-timer";
			reg = <0x1013c600 0x20>;
			interrupts = <GIC_PPI 13 0x304>;
77
			clocks = <&cru CORE_PERI>;
78 79 80 81 82 83 84 85
		};

		uart0: serial@10124000 {
			compatible = "snps,dw-apb-uart";
			reg = <0x10124000 0x400>;
			interrupts = <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>;
			reg-shift = <2>;
			reg-io-width = <1>;
86
			clocks = <&cru SCLK_UART0>;
87 88 89 90 91 92 93 94 95
			status = "disabled";
		};

		uart1: serial@10126000 {
			compatible = "snps,dw-apb-uart";
			reg = <0x10126000 0x400>;
			interrupts = <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>;
			reg-shift = <2>;
			reg-io-width = <1>;
96
			clocks = <&cru SCLK_UART1>;
97 98 99 100 101 102 103 104 105
			status = "disabled";
		};

		uart2: serial@20064000 {
			compatible = "snps,dw-apb-uart";
			reg = <0x20064000 0x400>;
			interrupts = <GIC_SPI 36 IRQ_TYPE_LEVEL_HIGH>;
			reg-shift = <2>;
			reg-io-width = <1>;
106
			clocks = <&cru SCLK_UART2>;
107 108 109 110 111 112 113 114 115
			status = "disabled";
		};

		uart3: serial@20068000 {
			compatible = "snps,dw-apb-uart";
			reg = <0x20068000 0x400>;
			interrupts = <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>;
			reg-shift = <2>;
			reg-io-width = <1>;
116
			clocks = <&cru SCLK_UART3>;
117 118 119 120 121 122 123 124 125 126
			status = "disabled";
		};

		dwmmc@10214000 {
			compatible = "rockchip,rk2928-dw-mshc";
			reg = <0x10214000 0x1000>;
			interrupts = <GIC_SPI 23 IRQ_TYPE_LEVEL_HIGH>;
			#address-cells = <1>;
			#size-cells = <0>;

127
			clocks = <&cru HCLK_SDMMC>, <&cru SCLK_SDMMC>;
128 129 130 131 132 133 134 135 136 137 138 139
			clock-names = "biu", "ciu";

			status = "disabled";
		};

		dwmmc@10218000 {
			compatible = "rockchip,rk2928-dw-mshc";
			reg = <0x10218000 0x1000>;
			interrupts = <GIC_SPI 24 IRQ_TYPE_LEVEL_HIGH>;
			#address-cells = <1>;
			#size-cells = <0>;

140
			clocks = <&cru HCLK_SDIO>, <&cru SCLK_SDIO>;
141 142 143 144 145 146
			clock-names = "biu", "ciu";

			status = "disabled";
		};
	};
};