mpc8568mds.dts 10.5 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
/*
 * MPC8568E MDS Device Tree Source
 *
 * Copyright 2007 Freescale Semiconductor Inc.
 *
 * 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.
 */


/*
/memreserve/	00000000 1000000;
*/

/ {
	model = "MPC8568EMDS";
19
	compatible = "MPC8568EMDS", "MPC85xxMDS";
20 21 22
	#address-cells = <1>;
	#size-cells = <1>;

23 24 25 26 27 28 29 30 31 32 33
	aliases {
		ethernet0 = &enet0;
		ethernet1 = &enet1;
		ethernet2 = &enet2;
		ethernet3 = &enet3;
		serial0 = &serial0;
		serial1 = &serial1;
		pci0 = &pci0;
		pci1 = &pci1;
	};

34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65
	cpus {
		#address-cells = <1>;
		#size-cells = <0>;

		PowerPC,8568@0 {
			device_type = "cpu";
			reg = <0>;
			d-cache-line-size = <20>;	// 32 bytes
			i-cache-line-size = <20>;	// 32 bytes
			d-cache-size = <8000>;		// L1, 32K
			i-cache-size = <8000>;		// L1, 32K
			timebase-frequency = <0>;
			bus-frequency = <0>;
			clock-frequency = <0>;
		};
	};

	memory {
		device_type = "memory";
		reg = <00000000 10000000>;
	};

	bcsr@f8000000 {
		device_type = "board-control";
		reg = <f8000000 8000>;
	};

	soc8568@e0000000 {
		#address-cells = <1>;
		#size-cells = <1>;
		device_type = "soc";
		ranges = <0 e0000000 00100000>;
K
Kumar Gala 已提交
66
		reg = <e0000000 00001000>;
67 68
		bus-frequency = <0>;

69 70 71 72
		memory-controller@2000 {
			compatible = "fsl,8568-memory-controller";
			reg = <2000 1000>;
			interrupt-parent = <&mpic>;
73
			interrupts = <12 2>;
74 75 76 77 78 79 80 81
		};

		l2-cache-controller@20000 {
			compatible = "fsl,8568-l2-cache-controller";
			reg = <20000 1000>;
			cache-line-size = <20>;	// 32 bytes
			cache-size = <80000>;	// L2, 512K
			interrupt-parent = <&mpic>;
82
			interrupts = <10 2>;
83 84
		};

85
		i2c@3000 {
86 87
			#address-cells = <1>;
			#size-cells = <0>;
88
			cell-index = <0>;
89 90
			compatible = "fsl-i2c";
			reg = <3000 100>;
91
			interrupts = <2b 2>;
92
			interrupt-parent = <&mpic>;
93
			dfsrr;
94 95 96 97 98

			rtc@68 {
				compatible = "dallas,ds1374";
				reg = <68>;
			};
99 100 101
		};

		i2c@3100 {
102 103
			#address-cells = <1>;
			#size-cells = <0>;
104
			cell-index = <1>;
105 106
			compatible = "fsl-i2c";
			reg = <3100 100>;
107
			interrupts = <2b 2>;
108
			interrupt-parent = <&mpic>;
109 110 111 112 113 114
			dfsrr;
		};

		mdio@24520 {
			#address-cells = <1>;
			#size-cells = <0>;
115
			compatible = "fsl,gianfar-mdio";
116
			reg = <24520 20>;
117

118
			phy0: ethernet-phy@7 {
119
				interrupt-parent = <&mpic>;
120
				interrupts = <1 1>;
121
				reg = <7>;
122 123
				device_type = "ethernet-phy";
			};
124 125
			phy1: ethernet-phy@1 {
				interrupt-parent = <&mpic>;
126
				interrupts = <2 1>;
127 128 129
				reg = <1>;
				device_type = "ethernet-phy";
			};
130 131
			phy2: ethernet-phy@2 {
				interrupt-parent = <&mpic>;
132
				interrupts = <1 1>;
133 134 135
				reg = <2>;
				device_type = "ethernet-phy";
			};
136 137
			phy3: ethernet-phy@3 {
				interrupt-parent = <&mpic>;
138
				interrupts = <2 1>;
139 140 141 142 143
				reg = <3>;
				device_type = "ethernet-phy";
			};
		};

144 145
		enet0: ethernet@24000 {
			cell-index = <0>;
146 147 148 149
			device_type = "network";
			model = "eTSEC";
			compatible = "gianfar";
			reg = <24000 1000>;
150
			local-mac-address = [ 00 00 00 00 00 00 ];
151
 			interrupts = <1d 2 1e 2 22 2>;
152 153
			interrupt-parent = <&mpic>;
			phy-handle = <&phy2>;
154 155
		};

156 157
		enet1: ethernet@25000 {
			cell-index = <1>;
158 159 160 161
			device_type = "network";
			model = "eTSEC";
			compatible = "gianfar";
			reg = <25000 1000>;
162
			local-mac-address = [ 00 00 00 00 00 00 ];
163
 			interrupts = <23 2 24 2 28 2>;
164 165
			interrupt-parent = <&mpic>;
			phy-handle = <&phy3>;
166 167
		};

168 169
		serial0: serial@4500 {
			cell-index = <0>;
170 171 172 173
			device_type = "serial";
			compatible = "ns16550";
			reg = <4500 100>;
			clock-frequency = <0>;
174
			interrupts = <2a 2>;
175
			interrupt-parent = <&mpic>;
176 177
		};

178 179 180 181 182 183
		global-utilities@e0000 {	//global utilities block
			compatible = "fsl,mpc8548-guts";
			reg = <e0000 1000>;
			fsl,has-rstcr;
		};

184 185
		serial1: serial@4600 {
			cell-index = <1>;
186 187 188 189
			device_type = "serial";
			compatible = "ns16550";
			reg = <4600 100>;
			clock-frequency = <0>;
190
			interrupts = <2a 2>;
191
			interrupt-parent = <&mpic>;
192 193 194 195 196 197 198
		};

		crypto@30000 {
			device_type = "crypto";
			model = "SEC2";
			compatible = "talitos";
			reg = <30000 f000>;
199
			interrupts = <2d 2>;
200
			interrupt-parent = <&mpic>;
201 202 203 204 205 206
			num-channels = <4>;
			channel-fifo-len = <18>;
			exec-units-mask = <000000fe>;
			descriptor-types-mask = <012b0ebf>;
		};

207
		mpic: pic@40000 {
208 209 210 211 212 213 214 215 216
			clock-frequency = <0>;
			interrupt-controller;
			#address-cells = <0>;
			#interrupt-cells = <2>;
			reg = <40000 40000>;
			compatible = "chrp,open-pic";
			device_type = "open-pic";
                        big-endian;
		};
K
Kumar Gala 已提交
217

218 219 220 221 222
		par_io@e0100 {
			reg = <e0100 100>;
			device_type = "par_io";
			num-ports = <7>;

223
			pio1: ucc_pin@01 {
224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243
				pio-map = <
			/* port  pin  dir  open_drain  assignment  has_irq */
					4  0a  1  0  2  0 	/* TxD0 */
					4  09  1  0  2  0 	/* TxD1 */
					4  08  1  0  2  0 	/* TxD2 */
					4  07  1  0  2  0 	/* TxD3 */
					4  17  1  0  2  0 	/* TxD4 */
					4  16  1  0  2  0 	/* TxD5 */
					4  15  1  0  2  0 	/* TxD6 */
					4  14  1  0  2  0 	/* TxD7 */
					4  0f  2  0  2  0 	/* RxD0 */
					4  0e  2  0  2  0 	/* RxD1 */
					4  0d  2  0  2  0 	/* RxD2 */
					4  0c  2  0  2  0 	/* RxD3 */
					4  1d  2  0  2  0 	/* RxD4 */
					4  1c  2  0  2  0 	/* RxD5 */
					4  1b  2  0  2  0 	/* RxD6 */
					4  1a  2  0  2  0 	/* RxD7 */
					4  0b  1  0  2  0 	/* TX_EN */
					4  18  1  0  2  0 	/* TX_ER */
244
					4  10  2  0  2  0 	/* RX_DV */
245 246 247 248 249
					4  1e  2  0  2  0 	/* RX_ER */
					4  11  2  0  2  0 	/* RX_CLK */
					4  13  1  0  2  0 	/* GTX_CLK */
					1  1f  2  0  3  0>;	/* GTX125 */
			};
K
Kumar Gala 已提交
250

251
			pio2: ucc_pin@02 {
252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286
				pio-map = <
			/* port  pin  dir  open_drain  assignment  has_irq */
					5  0a 1  0  2  0   /* TxD0 */
					5  09 1  0  2  0   /* TxD1 */
					5  08 1  0  2  0   /* TxD2 */
					5  07 1  0  2  0   /* TxD3 */
					5  17 1  0  2  0   /* TxD4 */
					5  16 1  0  2  0   /* TxD5 */
					5  15 1  0  2  0   /* TxD6 */
					5  14 1  0  2  0   /* TxD7 */
					5  0f 2  0  2  0   /* RxD0 */
					5  0e 2  0  2  0   /* RxD1 */
					5  0d 2  0  2  0   /* RxD2 */
					5  0c 2  0  2  0   /* RxD3 */
					5  1d 2  0  2  0   /* RxD4 */
					5  1c 2  0  2  0   /* RxD5 */
					5  1b 2  0  2  0   /* RxD6 */
					5  1a 2  0  2  0   /* RxD7 */
					5  0b 1  0  2  0   /* TX_EN */
					5  18 1  0  2  0   /* TX_ER */
					5  10 2  0  2  0   /* RX_DV */
					5  1e 2  0  2  0   /* RX_ER */
					5  11 2  0  2  0   /* RX_CLK */
					5  13 1  0  2  0   /* GTX_CLK */
					1  1f 2  0  3  0   /* GTX125 */
					4  06 3  0  2  0   /* MDIO */
					4  05 1  0  2  0>; /* MDC */
			};
		};
	};

	qe@e0080000 {
		#address-cells = <1>;
		#size-cells = <1>;
		device_type = "qe";
287
		compatible = "fsl,qe";
288 289 290 291 292 293
		ranges = <0 e0080000 00040000>;
		reg = <e0080000 480>;
		brg-frequency = <0>;
		bus-frequency = <179A7B00>;

		muram@10000 {
294 295
 			#address-cells = <1>;
 			#size-cells = <1>;
296
			compatible = "fsl,qe-muram", "fsl,cpm-muram";
297 298
			ranges = <0 00010000 0000c000>;

299
			data-only@0 {
300 301
				compatible = "fsl,qe-muram-data",
					     "fsl,cpm-muram-data";
302 303 304 305 306
				reg = <0 c000>;
			};
		};

		spi@4c0 {
307 308
			cell-index = <0>;
			compatible = "fsl,spi";
309 310
			reg = <4c0 40>;
			interrupts = <2>;
311
			interrupt-parent = <&qeic>;
312 313 314 315
			mode = "cpu";
		};

		spi@500 {
316 317
			cell-index = <1>;
			compatible = "fsl,spi";
318 319
			reg = <500 40>;
			interrupts = <1>;
320
			interrupt-parent = <&qeic>;
321 322 323
			mode = "cpu";
		};

324
		enet2: ucc@2000 {
325 326 327
			device_type = "network";
			compatible = "ucc_geth";
			model = "UCC";
328
			cell-index = <1>;
329 330 331
			device-id = <1>;
			reg = <2000 200>;
			interrupts = <20>;
332
			interrupt-parent = <&qeic>;
333
			local-mac-address = [ 00 00 00 00 00 00 ];
334 335
			rx-clock-name = "none";
			tx-clock-name = "clk16";
336
			pio-handle = <&pio1>;
337 338
			phy-handle = <&phy0>;
			phy-connection-type = "rgmii-id";
339 340
		};

341
		enet3: ucc@3000 {
342 343 344
			device_type = "network";
			compatible = "ucc_geth";
			model = "UCC";
345
			cell-index = <2>;
346 347 348
			device-id = <2>;
			reg = <3000 200>;
			interrupts = <21>;
349
			interrupt-parent = <&qeic>;
350
			local-mac-address = [ 00 00 00 00 00 00 ];
351 352
			rx-clock-name = "none";
			tx-clock-name = "clk16";
353
			pio-handle = <&pio2>;
354 355
			phy-handle = <&phy1>;
			phy-connection-type = "rgmii-id";
356 357 358 359 360 361
		};

		mdio@2120 {
			#address-cells = <1>;
			#size-cells = <0>;
			reg = <2120 18>;
362
			compatible = "fsl,ucc-mdio";
363 364 365

			/* These are the same PHYs as on
			 * gianfar's MDIO bus */
366
			qe_phy0: ethernet-phy@07 {
367
				interrupt-parent = <&mpic>;
368
				interrupts = <1 1>;
369
				reg = <7>;
370 371
				device_type = "ethernet-phy";
			};
372 373
			qe_phy1: ethernet-phy@01 {
				interrupt-parent = <&mpic>;
374
				interrupts = <2 1>;
375 376 377
				reg = <1>;
				device_type = "ethernet-phy";
			};
378 379
			qe_phy2: ethernet-phy@02 {
				interrupt-parent = <&mpic>;
380
				interrupts = <1 1>;
381 382 383
				reg = <2>;
				device_type = "ethernet-phy";
			};
384 385
			qe_phy3: ethernet-phy@03 {
				interrupt-parent = <&mpic>;
386
				interrupts = <2 1>;
387 388 389 390 391
				reg = <3>;
				device_type = "ethernet-phy";
			};
		};

392
		qeic: interrupt-controller@80 {
393
			interrupt-controller;
394
			compatible = "fsl,qe-ic";
395 396 397 398
			#address-cells = <0>;
			#interrupt-cells = <1>;
			reg = <80 80>;
			big-endian;
399
			interrupts = <2e 2 2e 2>; //high:30 low:30
400
			interrupt-parent = <&mpic>;
401 402 403
		};

	};
K
Kumar Gala 已提交
404

405 406
	pci0: pci@e0008000 {
		cell-index = <0>;
K
Kumar Gala 已提交
407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435
		interrupt-map-mask = <f800 0 0 7>;
		interrupt-map = <
			/* IDSEL 0x12 AD18 */
			9000 0 0 1 &mpic 5 1
			9000 0 0 2 &mpic 6 1
			9000 0 0 3 &mpic 7 1
			9000 0 0 4 &mpic 4 1

			/* IDSEL 0x13 AD19 */
			9800 0 0 1 &mpic 6 1
			9800 0 0 2 &mpic 7 1
			9800 0 0 3 &mpic 4 1
			9800 0 0 4 &mpic 5 1>;

		interrupt-parent = <&mpic>;
		interrupts = <18 2>;
		bus-range = <0 ff>;
		ranges = <02000000 0 80000000 80000000 0 20000000
			  01000000 0 00000000 e2000000 0 00800000>;
		clock-frequency = <3f940aa>;
		#interrupt-cells = <1>;
		#size-cells = <2>;
		#address-cells = <3>;
		reg = <e0008000 1000>;
		compatible = "fsl,mpc8540-pci";
		device_type = "pci";
	};

	/* PCI Express */
436 437
	pci1: pcie@e000a000 {
		cell-index = <2>;
K
Kumar Gala 已提交
438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472
		interrupt-map-mask = <f800 0 0 7>;
		interrupt-map = <

			/* IDSEL 0x0 (PEX) */
			00000 0 0 1 &mpic 0 1
			00000 0 0 2 &mpic 1 1
			00000 0 0 3 &mpic 2 1
			00000 0 0 4 &mpic 3 1>;

		interrupt-parent = <&mpic>;
		interrupts = <1a 2>;
		bus-range = <0 ff>;
		ranges = <02000000 0 a0000000 a0000000 0 10000000
			  01000000 0 00000000 e2800000 0 00800000>;
		clock-frequency = <1fca055>;
		#interrupt-cells = <1>;
		#size-cells = <2>;
		#address-cells = <3>;
		reg = <e000a000 1000>;
		compatible = "fsl,mpc8548-pcie";
		device_type = "pci";
		pcie@0 {
			reg = <0 0 0 0 0>;
			#size-cells = <2>;
			#address-cells = <3>;
			device_type = "pci";
			ranges = <02000000 0 a0000000
				  02000000 0 a0000000
				  0 10000000

				  01000000 0 00000000
				  01000000 0 00000000
				  0 00800000>;
		};
	};
473
};