18c2ecf20Sopenharmony_ci/*
28c2ecf20Sopenharmony_ci * MPC8569 Silicon/SoC Device Tree Source (post include)
38c2ecf20Sopenharmony_ci *
48c2ecf20Sopenharmony_ci * Copyright 2011 Freescale Semiconductor Inc.
58c2ecf20Sopenharmony_ci *
68c2ecf20Sopenharmony_ci * Redistribution and use in source and binary forms, with or without
78c2ecf20Sopenharmony_ci * modification, are permitted provided that the following conditions are met:
88c2ecf20Sopenharmony_ci *     * Redistributions of source code must retain the above copyright
98c2ecf20Sopenharmony_ci *       notice, this list of conditions and the following disclaimer.
108c2ecf20Sopenharmony_ci *     * Redistributions in binary form must reproduce the above copyright
118c2ecf20Sopenharmony_ci *       notice, this list of conditions and the following disclaimer in the
128c2ecf20Sopenharmony_ci *       documentation and/or other materials provided with the distribution.
138c2ecf20Sopenharmony_ci *     * Neither the name of Freescale Semiconductor nor the
148c2ecf20Sopenharmony_ci *       names of its contributors may be used to endorse or promote products
158c2ecf20Sopenharmony_ci *       derived from this software without specific prior written permission.
168c2ecf20Sopenharmony_ci *
178c2ecf20Sopenharmony_ci *
188c2ecf20Sopenharmony_ci * ALTERNATIVELY, this software may be distributed under the terms of the
198c2ecf20Sopenharmony_ci * GNU General Public License ("GPL") as published by the Free Software
208c2ecf20Sopenharmony_ci * Foundation, either version 2 of that License or (at your option) any
218c2ecf20Sopenharmony_ci * later version.
228c2ecf20Sopenharmony_ci *
238c2ecf20Sopenharmony_ci * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY
248c2ecf20Sopenharmony_ci * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
258c2ecf20Sopenharmony_ci * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
268c2ecf20Sopenharmony_ci * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY
278c2ecf20Sopenharmony_ci * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
288c2ecf20Sopenharmony_ci * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
298c2ecf20Sopenharmony_ci * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
308c2ecf20Sopenharmony_ci * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
318c2ecf20Sopenharmony_ci * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
328c2ecf20Sopenharmony_ci * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
338c2ecf20Sopenharmony_ci */
348c2ecf20Sopenharmony_ci
358c2ecf20Sopenharmony_ci&lbc {
368c2ecf20Sopenharmony_ci	#address-cells = <2>;
378c2ecf20Sopenharmony_ci	#size-cells = <1>;
388c2ecf20Sopenharmony_ci	compatible = "fsl,mpc8569-elbc", "fsl,elbc", "simple-bus";
398c2ecf20Sopenharmony_ci	interrupts = <19 2 0 0>;
408c2ecf20Sopenharmony_ci	sleep = <&pmc 0x08000000>;
418c2ecf20Sopenharmony_ci};
428c2ecf20Sopenharmony_ci
438c2ecf20Sopenharmony_ci/* controller at 0xa000 */
448c2ecf20Sopenharmony_ci&pci1 {
458c2ecf20Sopenharmony_ci	compatible = "fsl,mpc8548-pcie";
468c2ecf20Sopenharmony_ci	device_type = "pci";
478c2ecf20Sopenharmony_ci	#size-cells = <2>;
488c2ecf20Sopenharmony_ci	#address-cells = <3>;
498c2ecf20Sopenharmony_ci	bus-range = <0 255>;
508c2ecf20Sopenharmony_ci	clock-frequency = <33333333>;
518c2ecf20Sopenharmony_ci	interrupts = <26 2 0 0>;
528c2ecf20Sopenharmony_ci	sleep = <&pmc 0x20000000>;
538c2ecf20Sopenharmony_ci
548c2ecf20Sopenharmony_ci	pcie@0 {
558c2ecf20Sopenharmony_ci		reg = <0 0 0 0 0>;
568c2ecf20Sopenharmony_ci		#interrupt-cells = <1>;
578c2ecf20Sopenharmony_ci		#size-cells = <2>;
588c2ecf20Sopenharmony_ci		#address-cells = <3>;
598c2ecf20Sopenharmony_ci		device_type = "pci";
608c2ecf20Sopenharmony_ci		interrupts = <26 2 0 0>;
618c2ecf20Sopenharmony_ci		interrupt-map-mask = <0xf800 0 0 7>;
628c2ecf20Sopenharmony_ci		interrupt-map = <
638c2ecf20Sopenharmony_ci			/* IDSEL 0x0 */
648c2ecf20Sopenharmony_ci			0000 0x0 0x0 0x1 &mpic 0x0 0x1 0x0 0x0
658c2ecf20Sopenharmony_ci			0000 0x0 0x0 0x2 &mpic 0x1 0x1 0x0 0x0
668c2ecf20Sopenharmony_ci			0000 0x0 0x0 0x3 &mpic 0x2 0x1 0x0 0x0
678c2ecf20Sopenharmony_ci			0000 0x0 0x0 0x4 &mpic 0x3 0x1 0x0 0x0
688c2ecf20Sopenharmony_ci			>;
698c2ecf20Sopenharmony_ci	};
708c2ecf20Sopenharmony_ci};
718c2ecf20Sopenharmony_ci
728c2ecf20Sopenharmony_ci&rio {
738c2ecf20Sopenharmony_ci	compatible = "fsl,srio";
748c2ecf20Sopenharmony_ci	interrupts = <48 2 0 0>;
758c2ecf20Sopenharmony_ci	#address-cells = <2>;
768c2ecf20Sopenharmony_ci	#size-cells = <2>;
778c2ecf20Sopenharmony_ci	fsl,srio-rmu-handle = <&rmu>;
788c2ecf20Sopenharmony_ci	sleep = <&pmc 0x00080000>;
798c2ecf20Sopenharmony_ci	ranges;
808c2ecf20Sopenharmony_ci
818c2ecf20Sopenharmony_ci	port1 {
828c2ecf20Sopenharmony_ci		#address-cells = <2>;
838c2ecf20Sopenharmony_ci		#size-cells = <2>;
848c2ecf20Sopenharmony_ci		cell-index = <1>;
858c2ecf20Sopenharmony_ci	};
868c2ecf20Sopenharmony_ci
878c2ecf20Sopenharmony_ci	port2 {
888c2ecf20Sopenharmony_ci		#address-cells = <2>;
898c2ecf20Sopenharmony_ci		#size-cells = <2>;
908c2ecf20Sopenharmony_ci		cell-index = <2>;
918c2ecf20Sopenharmony_ci	};
928c2ecf20Sopenharmony_ci};
938c2ecf20Sopenharmony_ci
948c2ecf20Sopenharmony_ci&soc {
958c2ecf20Sopenharmony_ci	#address-cells = <1>;
968c2ecf20Sopenharmony_ci	#size-cells = <1>;
978c2ecf20Sopenharmony_ci	device_type = "soc";
988c2ecf20Sopenharmony_ci	compatible = "fsl,mpc8569-immr", "simple-bus";
998c2ecf20Sopenharmony_ci	bus-frequency = <0>;		// Filled out by uboot.
1008c2ecf20Sopenharmony_ci
1018c2ecf20Sopenharmony_ci	ecm-law@0 {
1028c2ecf20Sopenharmony_ci		compatible = "fsl,ecm-law";
1038c2ecf20Sopenharmony_ci		reg = <0x0 0x1000>;
1048c2ecf20Sopenharmony_ci		fsl,num-laws = <10>;
1058c2ecf20Sopenharmony_ci	};
1068c2ecf20Sopenharmony_ci
1078c2ecf20Sopenharmony_ci	ecm@1000 {
1088c2ecf20Sopenharmony_ci		compatible = "fsl,mpc8569-ecm", "fsl,ecm";
1098c2ecf20Sopenharmony_ci		reg = <0x1000 0x1000>;
1108c2ecf20Sopenharmony_ci		interrupts = <17 2 0 0>;
1118c2ecf20Sopenharmony_ci	};
1128c2ecf20Sopenharmony_ci
1138c2ecf20Sopenharmony_ci	memory-controller@2000 {
1148c2ecf20Sopenharmony_ci		compatible = "fsl,mpc8569-memory-controller";
1158c2ecf20Sopenharmony_ci		reg = <0x2000 0x1000>;
1168c2ecf20Sopenharmony_ci		interrupts = <18 2 0 0>;
1178c2ecf20Sopenharmony_ci	};
1188c2ecf20Sopenharmony_ci
1198c2ecf20Sopenharmony_ci	i2c-sleep-nexus {
1208c2ecf20Sopenharmony_ci		#address-cells = <1>;
1218c2ecf20Sopenharmony_ci		#size-cells = <1>;
1228c2ecf20Sopenharmony_ci		compatible = "simple-bus";
1238c2ecf20Sopenharmony_ci		sleep = <&pmc 0x00000004>;
1248c2ecf20Sopenharmony_ci		ranges;
1258c2ecf20Sopenharmony_ci
1268c2ecf20Sopenharmony_ci/include/ "pq3-i2c-0.dtsi"
1278c2ecf20Sopenharmony_ci/include/ "pq3-i2c-1.dtsi"
1288c2ecf20Sopenharmony_ci
1298c2ecf20Sopenharmony_ci	};
1308c2ecf20Sopenharmony_ci
1318c2ecf20Sopenharmony_ci	duart-sleep-nexus {
1328c2ecf20Sopenharmony_ci		#address-cells = <1>;
1338c2ecf20Sopenharmony_ci		#size-cells = <1>;
1348c2ecf20Sopenharmony_ci		compatible = "simple-bus";
1358c2ecf20Sopenharmony_ci		sleep = <&pmc 0x00000002>;
1368c2ecf20Sopenharmony_ci		ranges;
1378c2ecf20Sopenharmony_ci
1388c2ecf20Sopenharmony_ci/include/ "pq3-duart-0.dtsi"
1398c2ecf20Sopenharmony_ci
1408c2ecf20Sopenharmony_ci	};
1418c2ecf20Sopenharmony_ci
1428c2ecf20Sopenharmony_ci	L2: l2-cache-controller@20000 {
1438c2ecf20Sopenharmony_ci		compatible = "fsl,mpc8569-l2-cache-controller";
1448c2ecf20Sopenharmony_ci		reg = <0x20000 0x1000>;
1458c2ecf20Sopenharmony_ci		cache-line-size = <32>;	// 32 bytes
1468c2ecf20Sopenharmony_ci		cache-size = <0x80000>; // L2, 512K
1478c2ecf20Sopenharmony_ci		interrupts = <16 2 0 0>;
1488c2ecf20Sopenharmony_ci	};
1498c2ecf20Sopenharmony_ci
1508c2ecf20Sopenharmony_ci/include/ "pq3-dma-0.dtsi"
1518c2ecf20Sopenharmony_ci/include/ "pq3-esdhc-0.dtsi"
1528c2ecf20Sopenharmony_ci	sdhc@2e000 {
1538c2ecf20Sopenharmony_ci		sleep = <&pmc 0x00200000>;
1548c2ecf20Sopenharmony_ci	};
1558c2ecf20Sopenharmony_ci
1568c2ecf20Sopenharmony_ci	par_io@e0100 {
1578c2ecf20Sopenharmony_ci		#address-cells = <1>;
1588c2ecf20Sopenharmony_ci		#size-cells = <1>;
1598c2ecf20Sopenharmony_ci		reg = <0xe0100 0x100>;
1608c2ecf20Sopenharmony_ci		ranges = <0x0 0xe0100 0x100>;
1618c2ecf20Sopenharmony_ci		device_type = "par_io";
1628c2ecf20Sopenharmony_ci	};
1638c2ecf20Sopenharmony_ci
1648c2ecf20Sopenharmony_ci/include/ "pq3-sec3.1-0.dtsi"
1658c2ecf20Sopenharmony_ci	crypto@30000 {
1668c2ecf20Sopenharmony_ci		sleep = <&pmc 0x01000000>;
1678c2ecf20Sopenharmony_ci	};
1688c2ecf20Sopenharmony_ci
1698c2ecf20Sopenharmony_ci/include/ "pq3-mpic.dtsi"
1708c2ecf20Sopenharmony_ci/include/ "pq3-rmu-0.dtsi"
1718c2ecf20Sopenharmony_ci	rmu@d3000 {
1728c2ecf20Sopenharmony_ci		sleep = <&pmc 0x00040000>;
1738c2ecf20Sopenharmony_ci	};
1748c2ecf20Sopenharmony_ci
1758c2ecf20Sopenharmony_ci	global-utilities@e0000 {
1768c2ecf20Sopenharmony_ci		#address-cells = <1>;
1778c2ecf20Sopenharmony_ci		#size-cells = <1>;
1788c2ecf20Sopenharmony_ci		compatible = "fsl,mpc8569-guts", "fsl,mpc8548-guts";
1798c2ecf20Sopenharmony_ci		reg = <0xe0000 0x1000>;
1808c2ecf20Sopenharmony_ci		ranges = <0 0xe0000 0x1000>;
1818c2ecf20Sopenharmony_ci		fsl,has-rstcr;
1828c2ecf20Sopenharmony_ci
1838c2ecf20Sopenharmony_ci		pmc: power@70 {
1848c2ecf20Sopenharmony_ci			compatible = "fsl,mpc8569-pmc",
1858c2ecf20Sopenharmony_ci				     "fsl,mpc8548-pmc";
1868c2ecf20Sopenharmony_ci			reg = <0x70 0x20>;
1878c2ecf20Sopenharmony_ci		};
1888c2ecf20Sopenharmony_ci	};
1898c2ecf20Sopenharmony_ci};
1908c2ecf20Sopenharmony_ci
1918c2ecf20Sopenharmony_ci&qe {
1928c2ecf20Sopenharmony_ci	#address-cells = <1>;
1938c2ecf20Sopenharmony_ci	#size-cells = <1>;
1948c2ecf20Sopenharmony_ci	device_type = "qe";
1958c2ecf20Sopenharmony_ci	compatible = "fsl,qe";
1968c2ecf20Sopenharmony_ci	sleep = <&pmc 0x00000800>;
1978c2ecf20Sopenharmony_ci	brg-frequency = <0>;
1988c2ecf20Sopenharmony_ci	bus-frequency = <0>;
1998c2ecf20Sopenharmony_ci	fsl,qe-num-riscs = <4>;
2008c2ecf20Sopenharmony_ci	fsl,qe-num-snums = <46>;
2018c2ecf20Sopenharmony_ci
2028c2ecf20Sopenharmony_ci	qeic: interrupt-controller@80 {
2038c2ecf20Sopenharmony_ci		interrupt-controller;
2048c2ecf20Sopenharmony_ci		compatible = "fsl,qe-ic";
2058c2ecf20Sopenharmony_ci		#address-cells = <0>;
2068c2ecf20Sopenharmony_ci		#interrupt-cells = <1>;
2078c2ecf20Sopenharmony_ci		reg = <0x80 0x80>;
2088c2ecf20Sopenharmony_ci		interrupts = <46 2 0 0 46 2 0 0>; //high:30 low:30
2098c2ecf20Sopenharmony_ci		interrupt-parent = <&mpic>;
2108c2ecf20Sopenharmony_ci	};
2118c2ecf20Sopenharmony_ci
2128c2ecf20Sopenharmony_ci	timer@440 {
2138c2ecf20Sopenharmony_ci		compatible = "fsl,mpc8569-qe-gtm",
2148c2ecf20Sopenharmony_ci			     "fsl,qe-gtm", "fsl,gtm";
2158c2ecf20Sopenharmony_ci		reg = <0x440 0x40>;
2168c2ecf20Sopenharmony_ci		interrupts = <12 13 14 15>;
2178c2ecf20Sopenharmony_ci		interrupt-parent = <&qeic>;
2188c2ecf20Sopenharmony_ci		/* Filled in by U-Boot */
2198c2ecf20Sopenharmony_ci		clock-frequency = <0>;
2208c2ecf20Sopenharmony_ci	};
2218c2ecf20Sopenharmony_ci
2228c2ecf20Sopenharmony_ci	spi@4c0 {
2238c2ecf20Sopenharmony_ci		#address-cells = <1>;
2248c2ecf20Sopenharmony_ci		#size-cells = <0>;
2258c2ecf20Sopenharmony_ci		compatible = "fsl,mpc8569-qe-spi", "fsl,spi";
2268c2ecf20Sopenharmony_ci		reg = <0x4c0 0x40>;
2278c2ecf20Sopenharmony_ci		cell-index = <0>;
2288c2ecf20Sopenharmony_ci		interrupts = <2>;
2298c2ecf20Sopenharmony_ci		interrupt-parent = <&qeic>;
2308c2ecf20Sopenharmony_ci	};
2318c2ecf20Sopenharmony_ci
2328c2ecf20Sopenharmony_ci	spi@500 {
2338c2ecf20Sopenharmony_ci		#address-cells = <1>;
2348c2ecf20Sopenharmony_ci		#size-cells = <0>;
2358c2ecf20Sopenharmony_ci		cell-index = <1>;
2368c2ecf20Sopenharmony_ci		compatible = "fsl,spi";
2378c2ecf20Sopenharmony_ci		reg = <0x500 0x40>;
2388c2ecf20Sopenharmony_ci		interrupts = <1>;
2398c2ecf20Sopenharmony_ci		interrupt-parent = <&qeic>;
2408c2ecf20Sopenharmony_ci	};
2418c2ecf20Sopenharmony_ci
2428c2ecf20Sopenharmony_ci	usb@6c0 {
2438c2ecf20Sopenharmony_ci		compatible = "fsl,mpc8569-qe-usb",
2448c2ecf20Sopenharmony_ci			     "fsl,mpc8323-qe-usb";
2458c2ecf20Sopenharmony_ci		reg = <0x6c0 0x40 0x8b00 0x100>;
2468c2ecf20Sopenharmony_ci		interrupts = <11>;
2478c2ecf20Sopenharmony_ci		interrupt-parent = <&qeic>;
2488c2ecf20Sopenharmony_ci	};
2498c2ecf20Sopenharmony_ci
2508c2ecf20Sopenharmony_ci	ucc@2000 {
2518c2ecf20Sopenharmony_ci		cell-index = <1>;
2528c2ecf20Sopenharmony_ci		reg = <0x2000 0x200>;
2538c2ecf20Sopenharmony_ci		interrupts = <32>;
2548c2ecf20Sopenharmony_ci		interrupt-parent = <&qeic>;
2558c2ecf20Sopenharmony_ci	};
2568c2ecf20Sopenharmony_ci
2578c2ecf20Sopenharmony_ci	ucc@2200 {
2588c2ecf20Sopenharmony_ci		cell-index = <3>;
2598c2ecf20Sopenharmony_ci		reg = <0x2200 0x200>;
2608c2ecf20Sopenharmony_ci		interrupts = <34>;
2618c2ecf20Sopenharmony_ci		interrupt-parent = <&qeic>;
2628c2ecf20Sopenharmony_ci	};
2638c2ecf20Sopenharmony_ci
2648c2ecf20Sopenharmony_ci	ucc@3000 {
2658c2ecf20Sopenharmony_ci		cell-index = <2>;
2668c2ecf20Sopenharmony_ci		reg = <0x3000 0x200>;
2678c2ecf20Sopenharmony_ci		interrupts = <33>;
2688c2ecf20Sopenharmony_ci		interrupt-parent = <&qeic>;
2698c2ecf20Sopenharmony_ci	};
2708c2ecf20Sopenharmony_ci
2718c2ecf20Sopenharmony_ci	ucc@3200 {
2728c2ecf20Sopenharmony_ci		cell-index = <4>;
2738c2ecf20Sopenharmony_ci		reg = <0x3200 0x200>;
2748c2ecf20Sopenharmony_ci		interrupts = <35>;
2758c2ecf20Sopenharmony_ci		interrupt-parent = <&qeic>;
2768c2ecf20Sopenharmony_ci	};
2778c2ecf20Sopenharmony_ci
2788c2ecf20Sopenharmony_ci	ucc@3400 {
2798c2ecf20Sopenharmony_ci		cell-index = <6>;
2808c2ecf20Sopenharmony_ci		reg = <0x3400 0x200>;
2818c2ecf20Sopenharmony_ci		interrupts = <41>;
2828c2ecf20Sopenharmony_ci		interrupt-parent = <&qeic>;
2838c2ecf20Sopenharmony_ci	};
2848c2ecf20Sopenharmony_ci
2858c2ecf20Sopenharmony_ci	ucc@3600 {
2868c2ecf20Sopenharmony_ci		cell-index = <8>;
2878c2ecf20Sopenharmony_ci		reg = <0x3600 0x200>;
2888c2ecf20Sopenharmony_ci		interrupts = <43>;
2898c2ecf20Sopenharmony_ci		interrupt-parent = <&qeic>;
2908c2ecf20Sopenharmony_ci	};
2918c2ecf20Sopenharmony_ci
2928c2ecf20Sopenharmony_ci	muram@10000 {
2938c2ecf20Sopenharmony_ci		#address-cells = <1>;
2948c2ecf20Sopenharmony_ci		#size-cells = <1>;
2958c2ecf20Sopenharmony_ci		compatible = "fsl,qe-muram", "fsl,cpm-muram";
2968c2ecf20Sopenharmony_ci		ranges = <0x0 0x10000 0x20000>;
2978c2ecf20Sopenharmony_ci
2988c2ecf20Sopenharmony_ci		data-only@0 {
2998c2ecf20Sopenharmony_ci			compatible = "fsl,qe-muram-data",
3008c2ecf20Sopenharmony_ci				     "fsl,cpm-muram-data";
3018c2ecf20Sopenharmony_ci			reg = <0x0 0x20000>;
3028c2ecf20Sopenharmony_ci		};
3038c2ecf20Sopenharmony_ci	};
3048c2ecf20Sopenharmony_ci};
305