kirkwood.dtsi 3.9 KB
Newer Older
1 2 3
/include/ "skeleton.dtsi"

/ {
4
	compatible = "marvell,kirkwood";
5 6
	interrupt-parent = <&intc>;

7 8 9 10 11 12 13 14 15 16 17 18
	cpus {
		#address-cells = <1>;
		#size-cells = <0>;

		cpu@0 {
			device_type = "cpu";
			compatible = "marvell,feroceon";
			clocks = <&core_clk 1>, <&core_clk 3>, <&gate_clk 11>;
			clock-names = "cpu_clk", "ddrclk", "powersave";
		};
	};

19 20 21 22
	aliases {
	       gpio0 = &gpio0;
	       gpio1 = &gpio1;
	};
23 24 25 26 27 28 29
	intc: interrupt-controller {
		compatible = "marvell,orion-intc", "marvell,intc";
		interrupt-controller;
		#interrupt-cells = <1>;
		reg = <0xf1020204 0x04>,
		      <0xf1020214 0x04>;
	};
30

31 32
	ocp@f1000000 {
		compatible = "simple-bus";
33 34
		ranges = <0x00000000 0xf1000000 0x4000000
		          0xf5000000 0xf5000000 0x0000400>;
35 36 37
		#address-cells = <1>;
		#size-cells = <1>;

38 39 40 41 42 43
		core_clk: core-clocks@10030 {
			compatible = "marvell,kirkwood-core-clock";
			reg = <0x10030 0x4>;
	        	#clock-cells = <1>;
		};

44 45 46 47 48
		gpio0: gpio@10100 {
			compatible = "marvell,orion-gpio";
			#gpio-cells = <2>;
			gpio-controller;
			reg = <0x10100 0x40>;
49 50
			ngpios = <32>;
			interrupt-controller;
51
			#interrupt-cells = <2>;
52
			interrupts = <35>, <36>, <37>, <38>;
53
			clocks = <&gate_clk 7>;
54 55 56 57 58 59 60
		};

		gpio1: gpio@10140 {
			compatible = "marvell,orion-gpio";
			#gpio-cells = <2>;
			gpio-controller;
			reg = <0x10140 0x40>;
61 62
			ngpios = <18>;
			interrupt-controller;
63
			#interrupt-cells = <2>;
64
			interrupts = <39>, <40>, <41>;
65
			clocks = <&gate_clk 7>;
66 67
		};

68 69 70 71 72
		serial@12000 {
			compatible = "ns16550a";
			reg = <0x12000 0x100>;
			reg-shift = <2>;
			interrupts = <33>;
73
			clocks = <&gate_clk 7>;
74 75 76 77 78 79 80 81
			status = "disabled";
		};

		serial@12100 {
			compatible = "ns16550a";
			reg = <0x12100 0x100>;
			reg-shift = <2>;
			interrupts = <34>;
82
			clocks = <&gate_clk 7>;
83 84
			status = "disabled";
		};
85

86 87 88 89 90 91 92
		spi@10600 {
			compatible = "marvell,orion-spi";
			#address-cells = <1>;
			#size-cells = <0>;
			cell-index = <0>;
			interrupts = <23>;
			reg = <0x10600 0x28>;
93
			clocks = <&gate_clk 7>;
94 95 96
			status = "disabled";
		};

97 98 99 100 101 102 103
		gate_clk: clock-gating-control@2011c {
			compatible = "marvell,kirkwood-gating-clock";
			reg = <0x2011c 0x4>;
			clocks = <&core_clk 0>;
			#clock-cells = <1>;
		};

104 105 106
		wdt@20300 {
			compatible = "marvell,orion-wdt";
			reg = <0x20300 0x28>;
107
			clocks = <&gate_clk 7>;
108 109 110
			status = "okay";
		};

111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134
		xor@60800 {
			compatible = "marvell,orion-xor";
			reg = <0x60800 0x100
			       0x60A00 0x100>;
			status = "okay";
			clocks = <&gate_clk 8>;

			xor00 {
			      interrupts = <5>;
			      dmacap,memcpy;
			      dmacap,xor;
			};
			xor01 {
			      interrupts = <6>;
			      dmacap,memcpy;
			      dmacap,xor;
			      dmacap,memset;
			};
		};

		xor@60900 {
			compatible = "marvell,orion-xor";
			reg = <0x60900 0x100
			       0xd0B00 0x100>;
135
			status = "okay";
136 137 138 139 140 141 142 143 144 145 146 147 148
			clocks = <&gate_clk 16>;

			xor00 {
			      interrupts = <7>;
			      dmacap,memcpy;
			      dmacap,xor;
			};
			xor01 {
			      interrupts = <8>;
			      dmacap,memcpy;
			      dmacap,xor;
			      dmacap,memset;
			};
149 150
		};

151 152 153 154
		ehci@50000 {
			compatible = "marvell,orion-ehci";
			reg = <0x50000 0x1000>;
			interrupts = <19>;
155
			clocks = <&gate_clk 3>;
156 157 158
			status = "okay";
		};

159 160 161 162 163 164
		nand@3000000 {
			#address-cells = <1>;
			#size-cells = <1>;
			cle = <0>;
			ale = <1>;
			bank-width = <1>;
165
			compatible = "marvell,orion-nand";
166 167 168
			reg = <0x3000000 0x400>;
			chip-delay = <25>;
			/* set partition map and/or chip-delay in board dts */
169
			clocks = <&gate_clk 7>;
170 171
			status = "disabled";
		};
172 173 174 175 176 177 178 179

		i2c@11000 {
			compatible = "marvell,mv64xxx-i2c";
			reg = <0x11000 0x20>;
			#address-cells = <1>;
			#size-cells = <0>;
			interrupts = <29>;
			clock-frequency = <100000>;
180
			clocks = <&gate_clk 7>;
181 182
			status = "disabled";
		};
183 184 185 186 187 188 189

		crypto@30000 {
			compatible = "marvell,orion-crypto";
			reg = <0x30000 0x10000>,
			      <0xf5000000 0x800>;
			reg-names = "regs", "sram";
			interrupts = <22>;
190
			clocks = <&gate_clk 17>;
191 192
			status = "okay";
		};
193 194
	};
};