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
			compatible = "fsl,qe-muram", "fsl,cpm-muram";
295 296 297
			ranges = <0 00010000 0000c000>;

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

		spi@4c0 {
			device_type = "spi";
			compatible = "fsl_spi";
			reg = <4c0 40>;
			interrupts = <2>;
309
			interrupt-parent = <&qeic>;
310 311 312 313 314 315 316 317
			mode = "cpu";
		};

		spi@500 {
			device_type = "spi";
			compatible = "fsl_spi";
			reg = <500 40>;
			interrupts = <1>;
318
			interrupt-parent = <&qeic>;
319 320 321
			mode = "cpu";
		};

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

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

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

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

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

	};
K
Kumar Gala 已提交
402

403 404
	pci0: pci@e0008000 {
		cell-index = <0>;
K
Kumar Gala 已提交
405 406 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
		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 */
434 435
	pci1: pcie@e000a000 {
		cell-index = <2>;
K
Kumar Gala 已提交
436 437 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
		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>;
		};
	};
471
};