1e7a7b329SKumar Gala/*
2e7a7b329SKumar Gala * MPC8569 Silicon/SoC Device Tree Source (post include)
3e7a7b329SKumar Gala *
4e7a7b329SKumar Gala * Copyright 2011 Freescale Semiconductor Inc.
5e7a7b329SKumar Gala *
6e7a7b329SKumar Gala * Redistribution and use in source and binary forms, with or without
7e7a7b329SKumar Gala * modification, are permitted provided that the following conditions are met:
8e7a7b329SKumar Gala *     * Redistributions of source code must retain the above copyright
9e7a7b329SKumar Gala *       notice, this list of conditions and the following disclaimer.
10e7a7b329SKumar Gala *     * Redistributions in binary form must reproduce the above copyright
11e7a7b329SKumar Gala *       notice, this list of conditions and the following disclaimer in the
12e7a7b329SKumar Gala *       documentation and/or other materials provided with the distribution.
13e7a7b329SKumar Gala *     * Neither the name of Freescale Semiconductor nor the
14e7a7b329SKumar Gala *       names of its contributors may be used to endorse or promote products
15e7a7b329SKumar Gala *       derived from this software without specific prior written permission.
16e7a7b329SKumar Gala *
17e7a7b329SKumar Gala *
18e7a7b329SKumar Gala * ALTERNATIVELY, this software may be distributed under the terms of the
19e7a7b329SKumar Gala * GNU General Public License ("GPL") as published by the Free Software
20e7a7b329SKumar Gala * Foundation, either version 2 of that License or (at your option) any
21e7a7b329SKumar Gala * later version.
22e7a7b329SKumar Gala *
23e7a7b329SKumar Gala * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY
24e7a7b329SKumar Gala * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
25e7a7b329SKumar Gala * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
26e7a7b329SKumar Gala * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY
27e7a7b329SKumar Gala * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
28e7a7b329SKumar Gala * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
29e7a7b329SKumar Gala * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
30e7a7b329SKumar Gala * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
31e7a7b329SKumar Gala * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
32e7a7b329SKumar Gala * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
33e7a7b329SKumar Gala */
34e7a7b329SKumar Gala
35e7a7b329SKumar Gala&lbc {
36e7a7b329SKumar Gala	#address-cells = <2>;
37e7a7b329SKumar Gala	#size-cells = <1>;
38e7a7b329SKumar Gala	compatible = "fsl,mpc8569-elbc", "fsl,elbc", "simple-bus";
39e7a7b329SKumar Gala	interrupts = <19 2 0 0>;
40e7a7b329SKumar Gala	sleep = <&pmc 0x08000000>;
41e7a7b329SKumar Gala};
42e7a7b329SKumar Gala
43e7a7b329SKumar Gala/* controller at 0xa000 */
44e7a7b329SKumar Gala&pci1 {
45e7a7b329SKumar Gala	compatible = "fsl,mpc8548-pcie";
46e7a7b329SKumar Gala	device_type = "pci";
47e7a7b329SKumar Gala	#size-cells = <2>;
48e7a7b329SKumar Gala	#address-cells = <3>;
49e7a7b329SKumar Gala	bus-range = <0 255>;
50e7a7b329SKumar Gala	clock-frequency = <33333333>;
51e7a7b329SKumar Gala	interrupts = <26 2 0 0>;
52e7a7b329SKumar Gala	sleep = <&pmc 0x20000000>;
53e7a7b329SKumar Gala
54e7a7b329SKumar Gala	pcie@0 {
55e7a7b329SKumar Gala		reg = <0 0 0 0 0>;
56e7a7b329SKumar Gala		#interrupt-cells = <1>;
57e7a7b329SKumar Gala		#size-cells = <2>;
58e7a7b329SKumar Gala		#address-cells = <3>;
59e7a7b329SKumar Gala		device_type = "pci";
60e7a7b329SKumar Gala		interrupts = <26 2 0 0>;
61e7a7b329SKumar Gala		interrupt-map-mask = <0xf800 0 0 7>;
62e7a7b329SKumar Gala		interrupt-map = <
63e7a7b329SKumar Gala			/* IDSEL 0x0 */
64e7a7b329SKumar Gala			0000 0x0 0x0 0x1 &mpic 0x0 0x1 0x0 0x0
65e7a7b329SKumar Gala			0000 0x0 0x0 0x2 &mpic 0x1 0x1 0x0 0x0
66e7a7b329SKumar Gala			0000 0x0 0x0 0x3 &mpic 0x2 0x1 0x0 0x0
67e7a7b329SKumar Gala			0000 0x0 0x0 0x4 &mpic 0x3 0x1 0x0 0x0
68e7a7b329SKumar Gala			>;
69e7a7b329SKumar Gala	};
70e7a7b329SKumar Gala};
71e7a7b329SKumar Gala
72e7a7b329SKumar Gala&rio {
73e7a7b329SKumar Gala	#address-cells = <2>;
74e7a7b329SKumar Gala	#size-cells = <2>;
75e7a7b329SKumar Gala	compatible = "fsl,mpc8569-rapidio", "fsl,rapidio-delta";
76e7a7b329SKumar Gala	interrupts = <48 2 0 0 /* error     */
77e7a7b329SKumar Gala		      49 2 0 0 /* bell_outb */
78e7a7b329SKumar Gala		      50 2 0 0 /* bell_inb  */
79e7a7b329SKumar Gala		      53 2 0 0 /* msg1_tx   */
80e7a7b329SKumar Gala		      54 2 0 0 /* msg1_rx   */
81e7a7b329SKumar Gala		      55 2 0 0 /* msg2_tx   */
82e7a7b329SKumar Gala		      56 2 0 0 /* msg2_rx   */>;
83e7a7b329SKumar Gala	sleep = <&pmc 0x00080000>;
84e7a7b329SKumar Gala};
85e7a7b329SKumar Gala
86e7a7b329SKumar Gala&soc {
87e7a7b329SKumar Gala	#address-cells = <1>;
88e7a7b329SKumar Gala	#size-cells = <1>;
89e7a7b329SKumar Gala	device_type = "soc";
90e7a7b329SKumar Gala	compatible = "fsl,mpc8569-immr", "simple-bus";
91e7a7b329SKumar Gala	bus-frequency = <0>;		// Filled out by uboot.
92e7a7b329SKumar Gala
93e7a7b329SKumar Gala	ecm-law@0 {
94e7a7b329SKumar Gala		compatible = "fsl,ecm-law";
95e7a7b329SKumar Gala		reg = <0x0 0x1000>;
96e7a7b329SKumar Gala		fsl,num-laws = <10>;
97e7a7b329SKumar Gala	};
98e7a7b329SKumar Gala
99e7a7b329SKumar Gala	ecm@1000 {
100e7a7b329SKumar Gala		compatible = "fsl,mpc8569-ecm", "fsl,ecm";
101e7a7b329SKumar Gala		reg = <0x1000 0x1000>;
102e7a7b329SKumar Gala		interrupts = <17 2 0 0>;
103e7a7b329SKumar Gala	};
104e7a7b329SKumar Gala
105e7a7b329SKumar Gala	memory-controller@2000 {
106e7a7b329SKumar Gala		compatible = "fsl,mpc8569-memory-controller";
107e7a7b329SKumar Gala		reg = <0x2000 0x1000>;
108e7a7b329SKumar Gala		interrupts = <18 2 0 0>;
109e7a7b329SKumar Gala	};
110e7a7b329SKumar Gala
111e7a7b329SKumar Gala	i2c-sleep-nexus {
112e7a7b329SKumar Gala		#address-cells = <1>;
113e7a7b329SKumar Gala		#size-cells = <1>;
114e7a7b329SKumar Gala		compatible = "simple-bus";
115e7a7b329SKumar Gala		sleep = <&pmc 0x00000004>;
116e7a7b329SKumar Gala		ranges;
117e7a7b329SKumar Gala
118e7a7b329SKumar Gala/include/ "pq3-i2c-0.dtsi"
119e7a7b329SKumar Gala/include/ "pq3-i2c-1.dtsi"
120e7a7b329SKumar Gala
121e7a7b329SKumar Gala	};
122e7a7b329SKumar Gala
123e7a7b329SKumar Gala	duart-sleep-nexus {
124e7a7b329SKumar Gala		#address-cells = <1>;
125e7a7b329SKumar Gala		#size-cells = <1>;
126e7a7b329SKumar Gala		compatible = "simple-bus";
127e7a7b329SKumar Gala		sleep = <&pmc 0x00000002>;
128e7a7b329SKumar Gala		ranges;
129e7a7b329SKumar Gala
130e7a7b329SKumar Gala/include/ "pq3-duart-0.dtsi"
131e7a7b329SKumar Gala
132e7a7b329SKumar Gala	};
133e7a7b329SKumar Gala
134e7a7b329SKumar Gala	L2: l2-cache-controller@20000 {
135e7a7b329SKumar Gala		compatible = "fsl,mpc8569-l2-cache-controller";
136e7a7b329SKumar Gala		reg = <0x20000 0x1000>;
137e7a7b329SKumar Gala		cache-line-size = <32>;	// 32 bytes
138e7a7b329SKumar Gala		cache-size = <0x80000>; // L2, 512K
139e7a7b329SKumar Gala		interrupts = <16 2 0 0>;
140e7a7b329SKumar Gala	};
141e7a7b329SKumar Gala
142e7a7b329SKumar Gala/include/ "pq3-dma-0.dtsi"
143e7a7b329SKumar Gala/include/ "pq3-esdhc-0.dtsi"
144e7a7b329SKumar Gala	sdhc@2e000 {
145e7a7b329SKumar Gala		sleep = <&pmc 0x00200000>;
146e7a7b329SKumar Gala	};
147e7a7b329SKumar Gala
148e7a7b329SKumar Gala	par_io@e0100 {
149e7a7b329SKumar Gala		#address-cells = <1>;
150e7a7b329SKumar Gala		#size-cells = <1>;
151e7a7b329SKumar Gala		reg = <0xe0100 0x100>;
152e7a7b329SKumar Gala		ranges = <0x0 0xe0100 0x100>;
153e7a7b329SKumar Gala		device_type = "par_io";
154e7a7b329SKumar Gala	};
155e7a7b329SKumar Gala
156e7a7b329SKumar Gala/include/ "pq3-sec3.1-0.dtsi"
157e7a7b329SKumar Gala	crypto@30000 {
158e7a7b329SKumar Gala		sleep = <&pmc 0x01000000>;
159e7a7b329SKumar Gala	};
160e7a7b329SKumar Gala
161e7a7b329SKumar Gala/include/ "pq3-mpic.dtsi"
162e7a7b329SKumar Gala
163e7a7b329SKumar Gala	global-utilities@e0000 {
164e7a7b329SKumar Gala		#address-cells = <1>;
165e7a7b329SKumar Gala		#size-cells = <1>;
166e7a7b329SKumar Gala		compatible = "fsl,mpc8569-guts", "fsl,mpc8548-guts";
167e7a7b329SKumar Gala		reg = <0xe0000 0x1000>;
168e7a7b329SKumar Gala		ranges = <0 0xe0000 0x1000>;
169e7a7b329SKumar Gala		fsl,has-rstcr;
170e7a7b329SKumar Gala
171e7a7b329SKumar Gala		pmc: power@70 {
172e7a7b329SKumar Gala			compatible = "fsl,mpc8569-pmc",
173e7a7b329SKumar Gala				     "fsl,mpc8548-pmc";
174e7a7b329SKumar Gala			reg = <0x70 0x20>;
175e7a7b329SKumar Gala		};
176e7a7b329SKumar Gala	};
177e7a7b329SKumar Gala};
178e7a7b329SKumar Gala
179e7a7b329SKumar Gala&qe {
180e7a7b329SKumar Gala	#address-cells = <1>;
181e7a7b329SKumar Gala	#size-cells = <1>;
182e7a7b329SKumar Gala	device_type = "qe";
183e7a7b329SKumar Gala	compatible = "fsl,qe";
184e7a7b329SKumar Gala	sleep = <&pmc 0x00000800>;
185e7a7b329SKumar Gala	brg-frequency = <0>;
186e7a7b329SKumar Gala	bus-frequency = <0>;
187e7a7b329SKumar Gala	fsl,qe-num-riscs = <4>;
188e7a7b329SKumar Gala	fsl,qe-num-snums = <46>;
189e7a7b329SKumar Gala
190e7a7b329SKumar Gala	qeic: interrupt-controller@80 {
191e7a7b329SKumar Gala		interrupt-controller;
192e7a7b329SKumar Gala		compatible = "fsl,qe-ic";
193e7a7b329SKumar Gala		#address-cells = <0>;
194e7a7b329SKumar Gala		#interrupt-cells = <1>;
195e7a7b329SKumar Gala		reg = <0x80 0x80>;
196e7a7b329SKumar Gala		interrupts = <46 2 0 0 46 2 0 0>; //high:30 low:30
197e7a7b329SKumar Gala		interrupt-parent = <&mpic>;
198e7a7b329SKumar Gala	};
199e7a7b329SKumar Gala
200e7a7b329SKumar Gala	timer@440 {
201e7a7b329SKumar Gala		compatible = "fsl,mpc8569-qe-gtm",
202e7a7b329SKumar Gala			     "fsl,qe-gtm", "fsl,gtm";
203e7a7b329SKumar Gala		reg = <0x440 0x40>;
204e7a7b329SKumar Gala		interrupts = <12 13 14 15>;
205e7a7b329SKumar Gala		interrupt-parent = <&qeic>;
206e7a7b329SKumar Gala		/* Filled in by U-Boot */
207e7a7b329SKumar Gala		clock-frequency = <0>;
208e7a7b329SKumar Gala	};
209e7a7b329SKumar Gala
210e7a7b329SKumar Gala	spi@4c0 {
211e7a7b329SKumar Gala		#address-cells = <1>;
212e7a7b329SKumar Gala		#size-cells = <0>;
213e7a7b329SKumar Gala		compatible = "fsl,mpc8569-qe-spi", "fsl,spi";
214e7a7b329SKumar Gala		reg = <0x4c0 0x40>;
215e7a7b329SKumar Gala		cell-index = <0>;
216e7a7b329SKumar Gala		interrupts = <2>;
217e7a7b329SKumar Gala		interrupt-parent = <&qeic>;
218e7a7b329SKumar Gala	};
219e7a7b329SKumar Gala
220e7a7b329SKumar Gala	spi@500 {
221e7a7b329SKumar Gala		#address-cells = <1>;
222e7a7b329SKumar Gala		#size-cells = <0>;
223e7a7b329SKumar Gala		cell-index = <1>;
224e7a7b329SKumar Gala		compatible = "fsl,spi";
225e7a7b329SKumar Gala		reg = <0x500 0x40>;
226e7a7b329SKumar Gala		interrupts = <1>;
227e7a7b329SKumar Gala		interrupt-parent = <&qeic>;
228e7a7b329SKumar Gala	};
229e7a7b329SKumar Gala
230e7a7b329SKumar Gala	usb@6c0 {
231e7a7b329SKumar Gala		compatible = "fsl,mpc8569-qe-usb",
232e7a7b329SKumar Gala			     "fsl,mpc8323-qe-usb";
233e7a7b329SKumar Gala		reg = <0x6c0 0x40 0x8b00 0x100>;
234e7a7b329SKumar Gala		interrupts = <11>;
235e7a7b329SKumar Gala		interrupt-parent = <&qeic>;
236e7a7b329SKumar Gala	};
237e7a7b329SKumar Gala
238e7a7b329SKumar Gala	ucc@2000 {
239e7a7b329SKumar Gala		cell-index = <1>;
240e7a7b329SKumar Gala		reg = <0x2000 0x200>;
241e7a7b329SKumar Gala		interrupts = <32>;
242e7a7b329SKumar Gala		interrupt-parent = <&qeic>;
243e7a7b329SKumar Gala	};
244e7a7b329SKumar Gala
245e7a7b329SKumar Gala	ucc@2200 {
246e7a7b329SKumar Gala		cell-index = <3>;
247e7a7b329SKumar Gala		reg = <0x2200 0x200>;
248e7a7b329SKumar Gala		interrupts = <34>;
249e7a7b329SKumar Gala		interrupt-parent = <&qeic>;
250e7a7b329SKumar Gala	};
251e7a7b329SKumar Gala
252e7a7b329SKumar Gala	ucc@3000 {
253e7a7b329SKumar Gala		cell-index = <2>;
254e7a7b329SKumar Gala		reg = <0x3000 0x200>;
255e7a7b329SKumar Gala		interrupts = <33>;
256e7a7b329SKumar Gala		interrupt-parent = <&qeic>;
257e7a7b329SKumar Gala	};
258e7a7b329SKumar Gala
259e7a7b329SKumar Gala	ucc@3200 {
260e7a7b329SKumar Gala		cell-index = <4>;
261e7a7b329SKumar Gala		reg = <0x3200 0x200>;
262e7a7b329SKumar Gala		interrupts = <35>;
263e7a7b329SKumar Gala		interrupt-parent = <&qeic>;
264e7a7b329SKumar Gala	};
265e7a7b329SKumar Gala
266e7a7b329SKumar Gala	ucc@3400 {
267e7a7b329SKumar Gala		cell-index = <6>;
268e7a7b329SKumar Gala		reg = <0x3400 0x200>;
269e7a7b329SKumar Gala		interrupts = <41>;
270e7a7b329SKumar Gala		interrupt-parent = <&qeic>;
271e7a7b329SKumar Gala	};
272e7a7b329SKumar Gala
273e7a7b329SKumar Gala	ucc@3600 {
274e7a7b329SKumar Gala		cell-index = <8>;
275e7a7b329SKumar Gala		reg = <0x3600 0x200>;
276e7a7b329SKumar Gala		interrupts = <43>;
277e7a7b329SKumar Gala		interrupt-parent = <&qeic>;
278e7a7b329SKumar Gala	};
279e7a7b329SKumar Gala
280e7a7b329SKumar Gala	muram@10000 {
281e7a7b329SKumar Gala		#address-cells = <1>;
282e7a7b329SKumar Gala		#size-cells = <1>;
283e7a7b329SKumar Gala		compatible = "fsl,qe-muram", "fsl,cpm-muram";
284e7a7b329SKumar Gala		ranges = <0x0 0x10000 0x20000>;
285e7a7b329SKumar Gala
286e7a7b329SKumar Gala		data-only@0 {
287e7a7b329SKumar Gala			compatible = "fsl,qe-muram-data",
288e7a7b329SKumar Gala				     "fsl,cpm-muram-data";
289e7a7b329SKumar Gala			reg = <0x0 0x20000>;
290e7a7b329SKumar Gala		};
291e7a7b329SKumar Gala	};
292e7a7b329SKumar Gala};
293