12874c5fdSThomas Gleixner// SPDX-License-Identifier: GPL-2.0-or-later
2dc37374bSHongtao Jia/*
3dc37374bSHongtao Jia * P1021 MDS Device Tree Source
4dc37374bSHongtao Jia *
5dc37374bSHongtao Jia * Copyright 2010,2012 Freescale Semiconductor Inc.
6dc37374bSHongtao Jia */
7dc37374bSHongtao Jia
8dc37374bSHongtao Jia/include/ "p1021si-pre.dtsi"
9dc37374bSHongtao Jia/ {
10dc37374bSHongtao Jia	model = "fsl,P1021";
11dc37374bSHongtao Jia	compatible = "fsl,P1021MDS";
12dc37374bSHongtao Jia
13dc37374bSHongtao Jia	aliases {
14dc37374bSHongtao Jia		ethernet3 = &enet3;
15dc37374bSHongtao Jia		ethernet4 = &enet4;
16dc37374bSHongtao Jia	};
17dc37374bSHongtao Jia
18dc37374bSHongtao Jia	memory {
19dc37374bSHongtao Jia		device_type = "memory";
20dc37374bSHongtao Jia	};
21dc37374bSHongtao Jia
22dc37374bSHongtao Jia	lbc: localbus@ffe05000 {
23dc37374bSHongtao Jia		reg = <0x0 0xffe05000 0x0 0x1000>;
24dc37374bSHongtao Jia
25dc37374bSHongtao Jia		/* NAND Flash, BCSR, PMC0/1*/
26dc37374bSHongtao Jia		ranges = <0x0 0x0 0x0 0xfc000000 0x02000000
27dc37374bSHongtao Jia			  0x1 0x0 0x0 0xf8000000 0x00008000
28dc37374bSHongtao Jia			  0x2 0x0 0x0 0xf8010000 0x00020000
29dc37374bSHongtao Jia			  0x3 0x0 0x0 0xf8020000 0x00020000>;
30dc37374bSHongtao Jia
31dc37374bSHongtao Jia		nand@0,0 {
32dc37374bSHongtao Jia			#address-cells = <1>;
33dc37374bSHongtao Jia			#size-cells = <1>;
34dc37374bSHongtao Jia			compatible = "fsl,p1021-fcm-nand",
35dc37374bSHongtao Jia				     "fsl,elbc-fcm-nand";
36dc37374bSHongtao Jia			reg = <0x0 0x0 0x40000>;
37dc37374bSHongtao Jia
38dc37374bSHongtao Jia			partition@0 {
39dc37374bSHongtao Jia				/* This location must not be altered  */
40dc37374bSHongtao Jia				/* 1MB for u-boot Bootloader Image */
41dc37374bSHongtao Jia				reg = <0x0 0x00100000>;
42dc37374bSHongtao Jia				label = "NAND (RO) U-Boot Image";
43dc37374bSHongtao Jia				read-only;
44dc37374bSHongtao Jia			};
45dc37374bSHongtao Jia
46dc37374bSHongtao Jia			partition@100000 {
47dc37374bSHongtao Jia				/* 1MB for DTB Image */
48dc37374bSHongtao Jia				reg = <0x00100000 0x00100000>;
49dc37374bSHongtao Jia				label = "NAND (RO) DTB Image";
50dc37374bSHongtao Jia				read-only;
51dc37374bSHongtao Jia			};
52dc37374bSHongtao Jia
53dc37374bSHongtao Jia			partition@200000 {
54dc37374bSHongtao Jia				/* 4MB for Linux Kernel Image */
55dc37374bSHongtao Jia				reg = <0x00200000 0x00400000>;
56dc37374bSHongtao Jia				label = "NAND (RO) Linux Kernel Image";
57dc37374bSHongtao Jia				read-only;
58dc37374bSHongtao Jia			};
59dc37374bSHongtao Jia
60dc37374bSHongtao Jia			partition@600000 {
61dc37374bSHongtao Jia				/* 5MB for Compressed Root file System Image */
62dc37374bSHongtao Jia				reg = <0x00600000 0x00500000>;
63dc37374bSHongtao Jia				label = "NAND (RO) Compressed RFS Image";
64dc37374bSHongtao Jia				read-only;
65dc37374bSHongtao Jia			};
66dc37374bSHongtao Jia
67dc37374bSHongtao Jia			partition@b00000 {
68dc37374bSHongtao Jia				/* 6MB for JFFS2 based Root file System */
69dc37374bSHongtao Jia				reg = <0x00a00000 0x00600000>;
70dc37374bSHongtao Jia				label = "NAND (RW) JFFS2 Root File System";
71dc37374bSHongtao Jia			};
72dc37374bSHongtao Jia
73dc37374bSHongtao Jia			partition@1100000 {
74dc37374bSHongtao Jia				/* 14MB for JFFS2 based Root file System */
75dc37374bSHongtao Jia				reg = <0x01100000 0x00e00000>;
76dc37374bSHongtao Jia				label = "NAND (RW) Writable User area";
77dc37374bSHongtao Jia			};
78dc37374bSHongtao Jia
79dc37374bSHongtao Jia			partition@1f00000 {
80dc37374bSHongtao Jia				/* 1MB for microcode */
81dc37374bSHongtao Jia				reg = <0x01f00000 0x00100000>;
82dc37374bSHongtao Jia				label = "NAND (RO) QE Ucode";
83dc37374bSHongtao Jia				read-only;
84dc37374bSHongtao Jia			};
85dc37374bSHongtao Jia		};
86dc37374bSHongtao Jia
87dc37374bSHongtao Jia		bcsr@1,0 {
88dc37374bSHongtao Jia			#address-cells = <1>;
89dc37374bSHongtao Jia			#size-cells = <1>;
90dc37374bSHongtao Jia			compatible = "fsl,p1021mds-bcsr";
91dc37374bSHongtao Jia			reg = <1 0 0x8000>;
92dc37374bSHongtao Jia			ranges = <0 1 0 0x8000>;
93dc37374bSHongtao Jia		};
94dc37374bSHongtao Jia
95dc37374bSHongtao Jia		pib@2,0 {
96dc37374bSHongtao Jia			compatible = "fsl,p1021mds-pib";
97dc37374bSHongtao Jia			reg = <2 0 0x10000>;
98dc37374bSHongtao Jia		};
99dc37374bSHongtao Jia
100dc37374bSHongtao Jia		pib@3,0 {
101dc37374bSHongtao Jia			compatible = "fsl,p1021mds-pib";
102dc37374bSHongtao Jia			reg = <3 0 0x10000>;
103dc37374bSHongtao Jia		};
104dc37374bSHongtao Jia	};
105dc37374bSHongtao Jia
106dc37374bSHongtao Jia	soc: soc@ffe00000 {
107dc37374bSHongtao Jia		compatible = "fsl,p1021-immr", "simple-bus";
108dc37374bSHongtao Jia		ranges = <0x0 0x0 0xffe00000 0x100000>;
109dc37374bSHongtao Jia
110dc37374bSHongtao Jia		i2c@3000 {
111dc37374bSHongtao Jia			rtc@68 {
112dc37374bSHongtao Jia				compatible = "dallas,ds1374";
113dc37374bSHongtao Jia				reg = <0x68>;
114dc37374bSHongtao Jia			};
115dc37374bSHongtao Jia		};
116dc37374bSHongtao Jia
117dc37374bSHongtao Jia		spi@7000 {
118dc37374bSHongtao Jia
119dc37374bSHongtao Jia			flash@0 {
120dc37374bSHongtao Jia				#address-cells = <1>;
121dc37374bSHongtao Jia				#size-cells = <1>;
122fba4e9f9SHou Zhiqiang				compatible = "spansion,s25sl12801", "jedec,spi-nor";
123dc37374bSHongtao Jia				reg = <0>;
124dc37374bSHongtao Jia				spi-max-frequency = <40000000>; /* input clock */
125dc37374bSHongtao Jia
126dc37374bSHongtao Jia				partition@u-boot {
127dc37374bSHongtao Jia					label = "u-boot-spi";
128dc37374bSHongtao Jia					reg = <0x00000000 0x00100000>;
129dc37374bSHongtao Jia					read-only;
130dc37374bSHongtao Jia				};
131dc37374bSHongtao Jia				partition@kernel {
132dc37374bSHongtao Jia					label = "kernel-spi";
133dc37374bSHongtao Jia					reg = <0x00100000 0x00500000>;
134dc37374bSHongtao Jia					read-only;
135dc37374bSHongtao Jia				};
136dc37374bSHongtao Jia				partition@dtb {
137dc37374bSHongtao Jia					label = "dtb-spi";
138dc37374bSHongtao Jia					reg = <0x00600000 0x00100000>;
139dc37374bSHongtao Jia					read-only;
140dc37374bSHongtao Jia				};
141dc37374bSHongtao Jia				partition@fs {
142dc37374bSHongtao Jia					label = "file system-spi";
143dc37374bSHongtao Jia					reg = <0x00700000 0x00900000>;
144dc37374bSHongtao Jia				};
145dc37374bSHongtao Jia			};
146dc37374bSHongtao Jia		};
147dc37374bSHongtao Jia
148dc37374bSHongtao Jia		usb@22000 {
149dc37374bSHongtao Jia			phy_type = "ulpi";
150dc37374bSHongtao Jia			dr_mode = "host";
151dc37374bSHongtao Jia		};
152dc37374bSHongtao Jia
153dc37374bSHongtao Jia		mdio@24000 {
154dc37374bSHongtao Jia			phy0: ethernet-phy@0 {
155dc37374bSHongtao Jia				interrupts = <1 1 0 0>;
156dc37374bSHongtao Jia				reg = <0x0>;
157dc37374bSHongtao Jia			};
158dc37374bSHongtao Jia			phy1: ethernet-phy@1 {
159dc37374bSHongtao Jia				interrupts = <2 1 0 0>;
160dc37374bSHongtao Jia				reg = <0x1>;
161dc37374bSHongtao Jia			};
162dc37374bSHongtao Jia			phy4: ethernet-phy@4 {
163dc37374bSHongtao Jia				reg = <0x4>;
164dc37374bSHongtao Jia			};
165dc37374bSHongtao Jia			tbi-phy@5 {
166dc37374bSHongtao Jia				device_type = "tbi-phy";
167dc37374bSHongtao Jia				reg = <0x5>;
168dc37374bSHongtao Jia			};
169dc37374bSHongtao Jia		};
170dc37374bSHongtao Jia
171dc37374bSHongtao Jia		mdio@25000 {
172dc37374bSHongtao Jia			tbi0: tbi-phy@11 {
173dc37374bSHongtao Jia				reg = <0x11>;
174dc37374bSHongtao Jia				device_type = "tbi-phy";
175dc37374bSHongtao Jia			};
176dc37374bSHongtao Jia		};
177dc37374bSHongtao Jia
178dc37374bSHongtao Jia		ethernet@b0000 {
179dc37374bSHongtao Jia			phy-handle = <&phy0>;
180dc37374bSHongtao Jia			phy-connection-type = "rgmii-id";
181dc37374bSHongtao Jia		};
182dc37374bSHongtao Jia
183dc37374bSHongtao Jia		ethernet@b1000 {
184dc37374bSHongtao Jia			phy-handle = <&phy4>;
185dc37374bSHongtao Jia			tbi-handle = <&tbi0>;
186dc37374bSHongtao Jia			phy-connection-type = "sgmii";
187dc37374bSHongtao Jia		};
188dc37374bSHongtao Jia
189dc37374bSHongtao Jia		ethernet@b2000 {
190dc37374bSHongtao Jia			phy-handle = <&phy1>;
191dc37374bSHongtao Jia			phy-connection-type = "rgmii-id";
192dc37374bSHongtao Jia		};
193dc37374bSHongtao Jia
194dc37374bSHongtao Jia		par_io@e0100 {
195dc37374bSHongtao Jia			#address-cells = <1>;
196dc37374bSHongtao Jia			#size-cells = <1>;
197dc37374bSHongtao Jia			reg = <0xe0100 0x60>;
198dc37374bSHongtao Jia			ranges = <0x0 0xe0100 0x60>;
199dc37374bSHongtao Jia			device_type = "par_io";
200dc37374bSHongtao Jia			num-ports = <3>;
201600ecc19SMathieu Malaterre			pio1: ucc_pin@1 {
202dc37374bSHongtao Jia				pio-map = <
203dc37374bSHongtao Jia			/* port  pin  dir  open_drain  assignment  has_irq */
204dc37374bSHongtao Jia					0x1  0x13 0x1  0x0  0x1  0x0    /* QE_MUX_MDC */
205dc37374bSHongtao Jia					0x1  0x14 0x3  0x0  0x1  0x0    /* QE_MUX_MDIO */
206dc37374bSHongtao Jia					0x0  0x17 0x2  0x0  0x2  0x0    /* CLK12 */
207dc37374bSHongtao Jia					0x0  0x18 0x2  0x0  0x1  0x0    /* CLK9 */
208dc37374bSHongtao Jia					0x0  0x7  0x1  0x0  0x2  0x0    /* ENET1_TXD0_SER1_TXD0 */
209dc37374bSHongtao Jia					0x0  0x9  0x1  0x0  0x2  0x0    /* ENET1_TXD1_SER1_TXD1 */
210dc37374bSHongtao Jia					0x0  0xb  0x1  0x0  0x2  0x0    /* ENET1_TXD2_SER1_TXD2 */
211dc37374bSHongtao Jia					0x0  0xc  0x1  0x0  0x2  0x0    /* ENET1_TXD3_SER1_TXD3 */
212dc37374bSHongtao Jia					0x0  0x6  0x2  0x0  0x2  0x0    /* ENET1_RXD0_SER1_RXD0 */
213dc37374bSHongtao Jia					0x0  0xa  0x2  0x0  0x2  0x0    /* ENET1_RXD1_SER1_RXD1 */
214dc37374bSHongtao Jia					0x0  0xe  0x2  0x0  0x2  0x0    /* ENET1_RXD2_SER1_RXD2 */
215dc37374bSHongtao Jia					0x0  0xf  0x2  0x0  0x2  0x0    /* ENET1_RXD3_SER1_RXD3 */
216dc37374bSHongtao Jia					0x0  0x5  0x1  0x0  0x2  0x0    /* ENET1_TX_EN_SER1_RTS_B */
217dc37374bSHongtao Jia					0x0  0xd  0x1  0x0  0x2  0x0    /* ENET1_TX_ER */
218dc37374bSHongtao Jia					0x0  0x4  0x2  0x0  0x2  0x0    /* ENET1_RX_DV_SER1_CTS_B */
219dc37374bSHongtao Jia					0x0  0x8  0x2  0x0  0x2  0x0    /* ENET1_RX_ER_SER1_CD_B */
220dc37374bSHongtao Jia					0x0  0x11 0x2  0x0  0x2  0x0    /* ENET1_CRS */
221dc37374bSHongtao Jia					0x0  0x10 0x2  0x0  0x2  0x0>;    /* ENET1_COL */
222dc37374bSHongtao Jia			};
223dc37374bSHongtao Jia
224600ecc19SMathieu Malaterre			pio2: ucc_pin@2 {
225dc37374bSHongtao Jia				pio-map = <
226dc37374bSHongtao Jia			/* port  pin  dir  open_drain  assignment  has_irq */
227dc37374bSHongtao Jia					0x1  0x13 0x1  0x0  0x1  0x0    /* QE_MUX_MDC */
228dc37374bSHongtao Jia					0x1  0x14 0x3  0x0  0x1  0x0    /* QE_MUX_MDIO */
229dc37374bSHongtao Jia					0x1  0xb  0x2  0x0  0x1  0x0    /* CLK13 */
230dc37374bSHongtao Jia					0x1  0x7  0x1  0x0  0x2  0x0    /* ENET5_TXD0_SER5_TXD0 */
231dc37374bSHongtao Jia					0x1  0xa  0x1  0x0  0x2  0x0    /* ENET5_TXD1_SER5_TXD1 */
232dc37374bSHongtao Jia					0x1  0x6  0x2  0x0  0x2  0x0    /* ENET5_RXD0_SER5_RXD0 */
233dc37374bSHongtao Jia					0x1  0x9  0x2  0x0  0x2  0x0    /* ENET5_RXD1_SER5_RXD1 */
234dc37374bSHongtao Jia					0x1  0x5  0x1  0x0  0x2  0x0    /* ENET5_TX_EN_SER5_RTS_B */
235dc37374bSHongtao Jia					0x1  0x4  0x2  0x0  0x2  0x0    /* ENET5_RX_DV_SER5_CTS_B */
236dc37374bSHongtao Jia					0x1  0x8  0x2  0x0  0x2  0x0>;    /* ENET5_RX_ER_SER5_CD_B */
237dc37374bSHongtao Jia			};
238dc37374bSHongtao Jia		};
239dc37374bSHongtao Jia	};
240dc37374bSHongtao Jia
241dc37374bSHongtao Jia	pci0: pcie@ffe09000 {
242dc37374bSHongtao Jia		reg = <0 0xffe09000 0 0x1000>;
243dc37374bSHongtao Jia		ranges = <0x2000000 0x0 0xa0000000 0 0xa0000000 0x0 0x20000000
244dc37374bSHongtao Jia			  0x1000000 0x0 0x00000000 0 0xffc10000 0x0 0x10000>;
245dc37374bSHongtao Jia		pcie@0 {
246dc37374bSHongtao Jia			ranges = <0x2000000 0x0 0xa0000000
247dc37374bSHongtao Jia				  0x2000000 0x0 0xa0000000
248dc37374bSHongtao Jia				  0x0 0x20000000
249dc37374bSHongtao Jia
250dc37374bSHongtao Jia				  0x1000000 0x0 0x0
251dc37374bSHongtao Jia				  0x1000000 0x0 0x0
252dc37374bSHongtao Jia				  0x0 0x100000>;
253dc37374bSHongtao Jia		};
254dc37374bSHongtao Jia	};
255dc37374bSHongtao Jia
256dc37374bSHongtao Jia	pci1: pcie@ffe0a000 {
257dc37374bSHongtao Jia		reg = <0 0xffe0a000 0 0x1000>;
258dc37374bSHongtao Jia		ranges = <0x2000000 0x0 0xc0000000 0 0xc0000000 0x0 0x20000000
259dc37374bSHongtao Jia			  0x1000000 0x0 0x00000000 0 0xffc20000 0x0 0x10000>;
260dc37374bSHongtao Jia		pcie@0 {
261dc37374bSHongtao Jia			ranges = <0x2000000 0x0 0xc0000000
262dc37374bSHongtao Jia				  0x2000000 0x0 0xc0000000
263dc37374bSHongtao Jia				  0x0 0x20000000
264dc37374bSHongtao Jia
265dc37374bSHongtao Jia				  0x1000000 0x0 0x0
266dc37374bSHongtao Jia				  0x1000000 0x0 0x0
267dc37374bSHongtao Jia				  0x0 0x100000>;
268dc37374bSHongtao Jia		};
269dc37374bSHongtao Jia	};
270dc37374bSHongtao Jia
271dc37374bSHongtao Jia	qe: qe@ffe80000 {
272dc37374bSHongtao Jia		ranges = <0x0 0x0 0xffe80000 0x40000>;
273dc37374bSHongtao Jia		reg = <0 0xffe80000 0 0x480>;
274dc37374bSHongtao Jia		brg-frequency = <0>;
275dc37374bSHongtao Jia		bus-frequency = <0>;
276dc37374bSHongtao Jia		status = "disabled"; /* no firmware loaded */
277dc37374bSHongtao Jia
278dc37374bSHongtao Jia		enet3: ucc@2000 {
279dc37374bSHongtao Jia			device_type = "network";
280dc37374bSHongtao Jia			compatible = "ucc_geth";
281dc37374bSHongtao Jia			local-mac-address = [ 00 00 00 00 00 00 ];
282dc37374bSHongtao Jia			rx-clock-name = "clk12";
283dc37374bSHongtao Jia			tx-clock-name = "clk9";
284dc37374bSHongtao Jia			pio-handle = <&pio1>;
285dc37374bSHongtao Jia			phy-handle = <&qe_phy0>;
286dc37374bSHongtao Jia			phy-connection-type = "mii";
287dc37374bSHongtao Jia		};
288dc37374bSHongtao Jia
289dc37374bSHongtao Jia		mdio@2120 {
290dc37374bSHongtao Jia			qe_phy0: ethernet-phy@0 {
291dc37374bSHongtao Jia				interrupt-parent = <&mpic>;
292dc37374bSHongtao Jia				interrupts = <4 1 0 0>;
293dc37374bSHongtao Jia				reg = <0x0>;
294dc37374bSHongtao Jia			};
295600ecc19SMathieu Malaterre			qe_phy1: ethernet-phy@3 {
296dc37374bSHongtao Jia				interrupt-parent = <&mpic>;
297dc37374bSHongtao Jia				interrupts = <5 1 0 0>;
298dc37374bSHongtao Jia				reg = <0x3>;
299dc37374bSHongtao Jia			};
300dc37374bSHongtao Jia			tbi-phy@11 {
301dc37374bSHongtao Jia				reg = <0x11>;
302dc37374bSHongtao Jia				device_type = "tbi-phy";
303dc37374bSHongtao Jia			};
304dc37374bSHongtao Jia		};
305dc37374bSHongtao Jia
306dc37374bSHongtao Jia		enet4: ucc@2400 {
307dc37374bSHongtao Jia			device_type = "network";
308dc37374bSHongtao Jia			compatible = "ucc_geth";
309dc37374bSHongtao Jia			local-mac-address = [ 00 00 00 00 00 00 ];
310dc37374bSHongtao Jia			rx-clock-name = "none";
311dc37374bSHongtao Jia			tx-clock-name = "clk13";
312dc37374bSHongtao Jia			pio-handle = <&pio2>;
313dc37374bSHongtao Jia			phy-handle = <&qe_phy1>;
314dc37374bSHongtao Jia			phy-connection-type = "rmii";
315dc37374bSHongtao Jia		};
316dc37374bSHongtao Jia	};
317dc37374bSHongtao Jia};
318dc37374bSHongtao Jia
319dc37374bSHongtao Jia/include/ "p1021si-post.dtsi"
320