11a23b4a6SKumar Gala/*
21a23b4a6SKumar Gala * MPC8568 Silicon/SoC Device Tree Source (post include)
31a23b4a6SKumar Gala *
41a23b4a6SKumar Gala * Copyright 2011 Freescale Semiconductor Inc.
51a23b4a6SKumar Gala *
61a23b4a6SKumar Gala * Redistribution and use in source and binary forms, with or without
71a23b4a6SKumar Gala * modification, are permitted provided that the following conditions are met:
81a23b4a6SKumar Gala *     * Redistributions of source code must retain the above copyright
91a23b4a6SKumar Gala *       notice, this list of conditions and the following disclaimer.
101a23b4a6SKumar Gala *     * Redistributions in binary form must reproduce the above copyright
111a23b4a6SKumar Gala *       notice, this list of conditions and the following disclaimer in the
121a23b4a6SKumar Gala *       documentation and/or other materials provided with the distribution.
131a23b4a6SKumar Gala *     * Neither the name of Freescale Semiconductor nor the
141a23b4a6SKumar Gala *       names of its contributors may be used to endorse or promote products
151a23b4a6SKumar Gala *       derived from this software without specific prior written permission.
161a23b4a6SKumar Gala *
171a23b4a6SKumar Gala *
181a23b4a6SKumar Gala * ALTERNATIVELY, this software may be distributed under the terms of the
191a23b4a6SKumar Gala * GNU General Public License ("GPL") as published by the Free Software
201a23b4a6SKumar Gala * Foundation, either version 2 of that License or (at your option) any
211a23b4a6SKumar Gala * later version.
221a23b4a6SKumar Gala *
231a23b4a6SKumar Gala * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY
241a23b4a6SKumar Gala * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
251a23b4a6SKumar Gala * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
261a23b4a6SKumar Gala * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY
271a23b4a6SKumar Gala * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
281a23b4a6SKumar Gala * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
291a23b4a6SKumar Gala * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
301a23b4a6SKumar Gala * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
311a23b4a6SKumar Gala * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
321a23b4a6SKumar Gala * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
331a23b4a6SKumar Gala */
341a23b4a6SKumar Gala
351a23b4a6SKumar Gala&lbc {
361a23b4a6SKumar Gala	#address-cells = <2>;
371a23b4a6SKumar Gala	#size-cells = <1>;
381a23b4a6SKumar Gala	compatible = "fsl,mpc8568-localbus", "fsl,pq3-localbus", "simple-bus";
391a23b4a6SKumar Gala	interrupts = <19 2 0 0>;
401a23b4a6SKumar Gala	sleep = <&pmc 0x08000000>;
411a23b4a6SKumar Gala};
421a23b4a6SKumar Gala
431a23b4a6SKumar Gala/* controller at 0x8000 */
441a23b4a6SKumar Gala&pci0 {
451a23b4a6SKumar Gala	compatible = "fsl,mpc8540-pci";
461a23b4a6SKumar Gala	device_type = "pci";
471a23b4a6SKumar Gala	interrupts = <24 0x2 0 0>;
481a23b4a6SKumar Gala	bus-range = <0 0xff>;
491a23b4a6SKumar Gala	#interrupt-cells = <1>;
501a23b4a6SKumar Gala	#size-cells = <2>;
511a23b4a6SKumar Gala	#address-cells = <3>;
521a23b4a6SKumar Gala	sleep = <&pmc 0x80000000>;
531a23b4a6SKumar Gala};
541a23b4a6SKumar Gala
551a23b4a6SKumar Gala/* controller at 0xa000 */
561a23b4a6SKumar Gala&pci1 {
571a23b4a6SKumar Gala	compatible = "fsl,mpc8548-pcie";
581a23b4a6SKumar Gala	device_type = "pci";
591a23b4a6SKumar Gala	#size-cells = <2>;
601a23b4a6SKumar Gala	#address-cells = <3>;
611a23b4a6SKumar Gala	bus-range = <0 255>;
621a23b4a6SKumar Gala	clock-frequency = <33333333>;
631a23b4a6SKumar Gala	interrupts = <26 2 0 0>;
641a23b4a6SKumar Gala	sleep = <&pmc 0x20000000>;
651a23b4a6SKumar Gala
661a23b4a6SKumar Gala	pcie@0 {
671a23b4a6SKumar Gala		reg = <0 0 0 0 0>;
681a23b4a6SKumar Gala		#interrupt-cells = <1>;
691a23b4a6SKumar Gala		#size-cells = <2>;
701a23b4a6SKumar Gala		#address-cells = <3>;
711a23b4a6SKumar Gala		device_type = "pci";
721a23b4a6SKumar Gala		interrupts = <26 2 0 0>;
731a23b4a6SKumar Gala		interrupt-map-mask = <0xf800 0 0 7>;
741a23b4a6SKumar Gala		interrupt-map = <
751a23b4a6SKumar Gala			/* IDSEL 0x0 */
761a23b4a6SKumar Gala			0000 0x0 0x0 0x1 &mpic 0x0 0x1 0x0 0x0
771a23b4a6SKumar Gala			0000 0x0 0x0 0x2 &mpic 0x1 0x1 0x0 0x0
781a23b4a6SKumar Gala			0000 0x0 0x0 0x3 &mpic 0x2 0x1 0x0 0x0
791a23b4a6SKumar Gala			0000 0x0 0x0 0x4 &mpic 0x3 0x1 0x0 0x0
801a23b4a6SKumar Gala			>;
811a23b4a6SKumar Gala	};
821a23b4a6SKumar Gala};
831a23b4a6SKumar Gala
841a23b4a6SKumar Gala&rio {
851a23b4a6SKumar Gala	#address-cells = <2>;
861a23b4a6SKumar Gala	#size-cells = <2>;
871a23b4a6SKumar Gala	compatible = "fsl,mpc8568-rapidio", "fsl,rapidio-delta";
881a23b4a6SKumar Gala	interrupts = <48 2 0 0 /* error     */
891a23b4a6SKumar Gala		      49 2 0 0 /* bell_outb */
901a23b4a6SKumar Gala		      50 2 0 0 /* bell_inb  */
911a23b4a6SKumar Gala		      53 2 0 0 /* msg1_tx   */
921a23b4a6SKumar Gala		      54 2 0 0 /* msg1_rx   */
931a23b4a6SKumar Gala		      55 2 0 0 /* msg2_tx   */
941a23b4a6SKumar Gala		      56 2 0 0 /* msg2_rx   */>;
951a23b4a6SKumar Gala	sleep = <&pmc 0x00080000   /* controller */
961a23b4a6SKumar Gala		 &pmc 0x00040000>; /* message unit */
971a23b4a6SKumar Gala};
981a23b4a6SKumar Gala
991a23b4a6SKumar Gala&soc {
1001a23b4a6SKumar Gala	#address-cells = <1>;
1011a23b4a6SKumar Gala	#size-cells = <1>;
1021a23b4a6SKumar Gala	device_type = "soc";
1031a23b4a6SKumar Gala	compatible = "fsl,mpc8568-immr", "simple-bus";
1041a23b4a6SKumar Gala	bus-frequency = <0>;		// Filled out by uboot.
1051a23b4a6SKumar Gala
1061a23b4a6SKumar Gala	ecm-law@0 {
1071a23b4a6SKumar Gala		compatible = "fsl,ecm-law";
1081a23b4a6SKumar Gala		reg = <0x0 0x1000>;
1091a23b4a6SKumar Gala		fsl,num-laws = <10>;
1101a23b4a6SKumar Gala	};
1111a23b4a6SKumar Gala
1121a23b4a6SKumar Gala	ecm@1000 {
1131a23b4a6SKumar Gala		compatible = "fsl,mpc8568-ecm", "fsl,ecm";
1141a23b4a6SKumar Gala		reg = <0x1000 0x1000>;
1151a23b4a6SKumar Gala		interrupts = <17 2 0 0>;
1161a23b4a6SKumar Gala	};
1171a23b4a6SKumar Gala
1181a23b4a6SKumar Gala	memory-controller@2000 {
1191a23b4a6SKumar Gala		compatible = "fsl,mpc8568-memory-controller";
1201a23b4a6SKumar Gala		reg = <0x2000 0x1000>;
1211a23b4a6SKumar Gala		interrupts = <18 2 0 0>;
1221a23b4a6SKumar Gala	};
1231a23b4a6SKumar Gala
1241a23b4a6SKumar Gala	i2c-sleep-nexus {
1251a23b4a6SKumar Gala		#address-cells = <1>;
1261a23b4a6SKumar Gala		#size-cells = <1>;
1271a23b4a6SKumar Gala		compatible = "simple-bus";
1281a23b4a6SKumar Gala		sleep = <&pmc 0x00000004>;
1291a23b4a6SKumar Gala		ranges;
1301a23b4a6SKumar Gala
1311a23b4a6SKumar Gala/include/ "pq3-i2c-0.dtsi"
1321a23b4a6SKumar Gala/include/ "pq3-i2c-1.dtsi"
1331a23b4a6SKumar Gala
1341a23b4a6SKumar Gala	};
1351a23b4a6SKumar Gala
1361a23b4a6SKumar Gala	duart-sleep-nexus {
1371a23b4a6SKumar Gala		#address-cells = <1>;
1381a23b4a6SKumar Gala		#size-cells = <1>;
1391a23b4a6SKumar Gala		compatible = "simple-bus";
1401a23b4a6SKumar Gala		sleep = <&pmc 0x00000002>;
1411a23b4a6SKumar Gala		ranges;
1421a23b4a6SKumar Gala
1431a23b4a6SKumar Gala/include/ "pq3-duart-0.dtsi"
1441a23b4a6SKumar Gala
1451a23b4a6SKumar Gala	};
1461a23b4a6SKumar Gala
1471a23b4a6SKumar Gala	L2: l2-cache-controller@20000 {
1481a23b4a6SKumar Gala		compatible = "fsl,mpc8568-l2-cache-controller";
1491a23b4a6SKumar Gala		reg = <0x20000 0x1000>;
1501a23b4a6SKumar Gala		cache-line-size = <32>;	// 32 bytes
1511a23b4a6SKumar Gala		cache-size = <0x80000>; // L2, 512K
1521a23b4a6SKumar Gala		interrupts = <16 2 0 0>;
1531a23b4a6SKumar Gala	};
1541a23b4a6SKumar Gala
1551a23b4a6SKumar Gala/include/ "pq3-dma-0.dtsi"
1561a23b4a6SKumar Gala	dma@21300 {
1571a23b4a6SKumar Gala		sleep = <&pmc 0x00000400>;
1581a23b4a6SKumar Gala	};
1591a23b4a6SKumar Gala
1601a23b4a6SKumar Gala/include/ "pq3-etsec1-0.dtsi"
1611a23b4a6SKumar Gala	ethernet@24000 {
1621a23b4a6SKumar Gala		sleep = <&pmc 0x00000080>;
1631a23b4a6SKumar Gala	};
1641a23b4a6SKumar Gala
1651a23b4a6SKumar Gala/include/ "pq3-etsec1-1.dtsi"
1661a23b4a6SKumar Gala	ethernet@25000 {
1671a23b4a6SKumar Gala		sleep = <&pmc 0x00000040>;
1681a23b4a6SKumar Gala	};
1691a23b4a6SKumar Gala
1701a23b4a6SKumar Gala	par_io@e0100 {
1711a23b4a6SKumar Gala		reg = <0xe0100 0x100>;
1721a23b4a6SKumar Gala		device_type = "par_io";
1731a23b4a6SKumar Gala	};
1741a23b4a6SKumar Gala
1751a23b4a6SKumar Gala/include/ "pq3-sec2.1-0.dtsi"
1761a23b4a6SKumar Gala	crypto@30000 {
1771a23b4a6SKumar Gala		sleep = <&pmc 0x01000000>;
1781a23b4a6SKumar Gala	};
1791a23b4a6SKumar Gala
1801a23b4a6SKumar Gala/include/ "pq3-mpic.dtsi"
1811a23b4a6SKumar Gala
1821a23b4a6SKumar Gala	global-utilities@e0000 {
1831a23b4a6SKumar Gala		#address-cells = <1>;
1841a23b4a6SKumar Gala		#size-cells = <1>;
1851a23b4a6SKumar Gala		compatible = "fsl,mpc8568-guts", "fsl,mpc8548-guts";
1861a23b4a6SKumar Gala		reg = <0xe0000 0x1000>;
1871a23b4a6SKumar Gala		ranges = <0 0xe0000 0x1000>;
1881a23b4a6SKumar Gala		fsl,has-rstcr;
1891a23b4a6SKumar Gala
1901a23b4a6SKumar Gala		pmc: power@70 {
1911a23b4a6SKumar Gala			compatible = "fsl,mpc8568-pmc",
1921a23b4a6SKumar Gala				     "fsl,mpc8548-pmc";
1931a23b4a6SKumar Gala			reg = <0x70 0x20>;
1941a23b4a6SKumar Gala		};
1951a23b4a6SKumar Gala	};
1961a23b4a6SKumar Gala};
1971a23b4a6SKumar Gala
1981a23b4a6SKumar Gala&qe {
1991a23b4a6SKumar Gala	#address-cells = <1>;
2001a23b4a6SKumar Gala	#size-cells = <1>;
2011a23b4a6SKumar Gala	device_type = "qe";
2021a23b4a6SKumar Gala	compatible = "fsl,qe";
2031a23b4a6SKumar Gala	sleep = <&pmc 0x00000800>;
2041a23b4a6SKumar Gala	brg-frequency = <0>;
2051a23b4a6SKumar Gala	bus-frequency = <396000000>;
2061a23b4a6SKumar Gala	fsl,qe-num-riscs = <2>;
2071a23b4a6SKumar Gala	fsl,qe-num-snums = <28>;
2081a23b4a6SKumar Gala
2091a23b4a6SKumar Gala	qeic: interrupt-controller@80 {
2101a23b4a6SKumar Gala		interrupt-controller;
2111a23b4a6SKumar Gala		compatible = "fsl,qe-ic";
2121a23b4a6SKumar Gala		#address-cells = <0>;
2131a23b4a6SKumar Gala		#interrupt-cells = <1>;
2141a23b4a6SKumar Gala		reg = <0x80 0x80>;
2151a23b4a6SKumar Gala		interrupts = <46 2 0 0 46 2 0 0>; //high:30 low:30
2161a23b4a6SKumar Gala		interrupt-parent = <&mpic>;
2171a23b4a6SKumar Gala	};
2181a23b4a6SKumar Gala
2191a23b4a6SKumar Gala	spi@4c0 {
2201a23b4a6SKumar Gala		#address-cells = <1>;
2211a23b4a6SKumar Gala		#size-cells = <0>;
2221a23b4a6SKumar Gala		compatible = "fsl,spi";
2231a23b4a6SKumar Gala		reg = <0x4c0 0x40>;
2241a23b4a6SKumar Gala		cell-index = <0>;
2251a23b4a6SKumar Gala		interrupts = <2>;
2261a23b4a6SKumar Gala		interrupt-parent = <&qeic>;
2271a23b4a6SKumar Gala	};
2281a23b4a6SKumar Gala
2291a23b4a6SKumar Gala	spi@500 {
2301a23b4a6SKumar Gala		#address-cells = <1>;
2311a23b4a6SKumar Gala		#size-cells = <0>;
2321a23b4a6SKumar Gala		cell-index = <1>;
2331a23b4a6SKumar Gala		compatible = "fsl,spi";
2341a23b4a6SKumar Gala		reg = <0x500 0x40>;
2351a23b4a6SKumar Gala		interrupts = <1>;
2361a23b4a6SKumar Gala		interrupt-parent = <&qeic>;
2371a23b4a6SKumar Gala	};
2381a23b4a6SKumar Gala
2391a23b4a6SKumar Gala	ucc@2000 {
2401a23b4a6SKumar Gala		cell-index = <1>;
2411a23b4a6SKumar Gala		reg = <0x2000 0x200>;
2421a23b4a6SKumar Gala		interrupts = <32>;
2431a23b4a6SKumar Gala		interrupt-parent = <&qeic>;
2441a23b4a6SKumar Gala	};
2451a23b4a6SKumar Gala
2461a23b4a6SKumar Gala	ucc@3000 {
2471a23b4a6SKumar Gala		cell-index = <2>;
2481a23b4a6SKumar Gala		reg = <0x3000 0x200>;
2491a23b4a6SKumar Gala		interrupts = <33>;
2501a23b4a6SKumar Gala		interrupt-parent = <&qeic>;
2511a23b4a6SKumar Gala	};
2521a23b4a6SKumar Gala
2531a23b4a6SKumar Gala	muram@10000 {
2541a23b4a6SKumar Gala		#address-cells = <1>;
2551a23b4a6SKumar Gala		#size-cells = <1>;
2561a23b4a6SKumar Gala		compatible = "fsl,qe-muram", "fsl,cpm-muram";
2571a23b4a6SKumar Gala		ranges = <0x0 0x10000 0x10000>;
2581a23b4a6SKumar Gala
2591a23b4a6SKumar Gala		data-only@0 {
2601a23b4a6SKumar Gala			compatible = "fsl,qe-muram-data",
2611a23b4a6SKumar Gala				     "fsl,cpm-muram-data";
2621a23b4a6SKumar Gala			reg = <0x0 0x10000>;
2631a23b4a6SKumar Gala		};
2641a23b4a6SKumar Gala	};
2651a23b4a6SKumar Gala};
266