armada-370-xp.dtsi 5.0 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
/*
 * Device Tree Include file for Marvell Armada 370 and Armada XP SoC
 *
 * Copyright (C) 2012 Marvell
 *
 * Lior Amsalem <alior@marvell.com>
 * Gregory CLEMENT <gregory.clement@free-electrons.com>
 * Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
 * Ben Dooks <ben.dooks@codethink.co.uk>
 *
 * This file is licensed under the terms of the GNU General Public
 * License version 2.  This program is licensed "as is" without any
 * warranty of any kind, whether express or implied.
 *
 * This file contains the definitions that are common to the Armada
 * 370 and Armada XP SoC.
 */

19
/include/ "skeleton64.dtsi"
20 21 22

/ {
	model = "Marvell Armada 370 and XP SoC";
23
	compatible = "marvell,armada-370-xp";
24 25 26 27 28 29 30 31 32 33 34 35

	cpus {
		cpu@0 {
			compatible = "marvell,sheeva-v7";
		};
	};

	soc {
		#address-cells = <1>;
		#size-cells = <1>;
		compatible = "simple-bus";
		interrupt-parent = <&mpic>;
36 37
		ranges = <0          0 0xd0000000 0x0100000 /* internal registers */
			  0xe0000000 0 0xe0000000 0x8100000 /* PCIe */>;
38

39 40 41 42 43 44 45
		internal-regs {
			compatible = "simple-bus";
			#address-cells = <1>;
			#size-cells = <1>;
			ranges;

			mpic: interrupt-controller@20000 {
46 47 48 49
				compatible = "marvell,mpic";
				#interrupt-cells = <1>;
				#size-cells = <1>;
				interrupt-controller;
50
			};
51

52
			coherency-fabric@20200 {
53
				compatible = "marvell,coherency-fabric";
54 55
				reg = <0x20200 0xb0>, <0x21810 0x1c>;
			};
56

57
			serial@12000 {
58
				compatible = "snps,dw-apb-uart";
59
				reg = <0x12000 0x100>;
60 61
				reg-shift = <2>;
				interrupts = <41>;
62
				reg-io-width = <1>;
63
				status = "disabled";
64 65
			};
			serial@12100 {
66
				compatible = "snps,dw-apb-uart";
67
				reg = <0x12100 0x100>;
68 69
				reg-shift = <2>;
				interrupts = <42>;
70
				reg-io-width = <1>;
71
				status = "disabled";
72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88
			};

			timer@20300 {
				compatible = "marvell,armada-370-xp-timer";
				reg = <0x20300 0x30>, <0x21040 0x30>;
				interrupts = <37>, <38>, <39>, <40>, <5>, <6>;
				clocks = <&coreclk 2>;
			};

			sata@a0000 {
				compatible = "marvell,orion-sata";
				reg = <0xa0000 0x2400>;
				interrupts = <55>;
				clocks = <&gateclk 15>, <&gateclk 30>;
				clock-names = "0", "1";
				status = "disabled";
			};
89

90 91 92 93 94 95
			mdio {
				#address-cells = <1>;
				#size-cells = <0>;
				compatible = "marvell,orion-mdio";
				reg = <0x72004 0x4>;
			};
96

97
			ethernet@70000 {
98
				compatible = "marvell,armada-370-neta";
99
				reg = <0x70000 0x2500>;
100
				interrupts = <8>;
101
				clocks = <&gateclk 4>;
102
				status = "disabled";
103
			};
104

105
			ethernet@74000 {
106
				compatible = "marvell,armada-370-neta";
107
				reg = <0x74000 0x2500>;
108
				interrupts = <10>;
109
				clocks = <&gateclk 3>;
110
				status = "disabled";
111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147
			};

			i2c0: i2c@11000 {
				compatible = "marvell,mv64xxx-i2c";
				reg = <0x11000 0x20>;
				#address-cells = <1>;
				#size-cells = <0>;
				interrupts = <31>;
				timeout-ms = <1000>;
				clocks = <&coreclk 0>;
				status = "disabled";
			};

			i2c1: i2c@11100 {
				compatible = "marvell,mv64xxx-i2c";
				reg = <0x11100 0x20>;
				#address-cells = <1>;
				#size-cells = <0>;
				interrupts = <32>;
				timeout-ms = <1000>;
				clocks = <&coreclk 0>;
				status = "disabled";
			};

			rtc@10300 {
				compatible = "marvell,orion-rtc";
				reg = <0x10300 0x20>;
				interrupts = <50>;
			};

			mvsdio@d4000 {
				compatible = "marvell,orion-sdio";
				reg = <0xd4000 0x200>;
				interrupts = <54>;
				clocks = <&gateclk 17>;
				status = "disabled";
			};
148

149 150 151 152 153 154
			usb@50000 {
				compatible = "marvell,orion-ehci";
				reg = <0x50000 0x500>;
				interrupts = <45>;
				status = "disabled";
			};
155

156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183
			usb@51000 {
				compatible = "marvell,orion-ehci";
				reg = <0x51000 0x500>;
				interrupts = <46>;
				status = "disabled";
			};

			spi0: spi@10600 {
				compatible = "marvell,orion-spi";
				reg = <0x10600 0x28>;
				#address-cells = <1>;
				#size-cells = <0>;
				cell-index = <0>;
				interrupts = <30>;
				clocks = <&coreclk 0>;
				status = "disabled";
			};

			spi1: spi@10680 {
				compatible = "marvell,orion-spi";
				reg = <0x10680 0x28>;
				#address-cells = <1>;
				#size-cells = <0>;
				cell-index = <1>;
				interrupts = <92>;
				clocks = <&coreclk 0>;
				status = "disabled";
			};
184

185 186 187 188 189 190 191 192
			devbus-bootcs@10400 {
				compatible = "marvell,mvebu-devbus";
				reg = <0x10400 0x8>;
				#address-cells = <1>;
				#size-cells = <1>;
				clocks = <&coreclk 0>;
				status = "disabled";
			};
193

194 195 196 197 198 199 200 201
			devbus-cs0@10408 {
				compatible = "marvell,mvebu-devbus";
				reg = <0x10408 0x8>;
				#address-cells = <1>;
				#size-cells = <1>;
				clocks = <&coreclk 0>;
				status = "disabled";
			};
202

203 204 205 206 207 208 209 210
			devbus-cs1@10410 {
				compatible = "marvell,mvebu-devbus";
				reg = <0x10410 0x8>;
				#address-cells = <1>;
				#size-cells = <1>;
				clocks = <&coreclk 0>;
				status = "disabled";
			};
211

212 213 214 215 216 217 218 219
			devbus-cs2@10418 {
				compatible = "marvell,mvebu-devbus";
				reg = <0x10418 0x8>;
				#address-cells = <1>;
				#size-cells = <1>;
				clocks = <&coreclk 0>;
				status = "disabled";
			};
220

221 222 223 224 225 226 227 228
			devbus-cs3@10420 {
				compatible = "marvell,mvebu-devbus";
				reg = <0x10420 0x8>;
				#address-cells = <1>;
				#size-cells = <1>;
				clocks = <&coreclk 0>;
				status = "disabled";
			};
229
		};
230
	};
231
 };