1 // SPDX-License-Identifier: GPL-2.0+ OR X11
3 * Device Tree Include file for Freescale Layerscape-1046A family SoC.
5 * Copyright (C) 2016, Freescale Semiconductor
7 * Mingkai Hu <mingkai.hu@nxp.com>
10 /include/ "skeleton64.dtsi"
13 compatible = "fsl,ls1046a";
14 interrupt-parent = <&gic>;
17 compatible = "fixed-clock";
19 clock-frequency = <100000000>;
20 clock-output-names = "sysclk";
23 gic: interrupt-controller@1400000 {
24 compatible = "arm,gic-400";
25 #interrupt-cells = <3>;
27 reg = <0x0 0x1410000 0 0x10000>, /* GICD */
28 <0x0 0x1420000 0 0x10000>, /* GICC */
29 <0x0 0x1440000 0 0x20000>, /* GICH */
30 <0x0 0x1460000 0 0x20000>; /* GICV */
31 interrupts = <1 9 0xf08>;
35 compatible = "simple-bus";
40 clockgen: clocking@1ee1000 {
41 compatible = "fsl,ls1046a-clockgen";
42 reg = <0x0 0x1ee1000 0x0 0x1000>;
48 compatible = "fsl,vf610-dspi";
51 reg = <0x0 0x2100000 0x0 0x10000>;
52 interrupts = <0 64 0x4>;
54 clocks = <&clockgen 4 0>;
61 compatible = "fsl,vf610-dspi";
64 reg = <0x0 0x2110000 0x0 0x10000>;
65 interrupts = <0 65 0x4>;
67 clocks = <&clockgen 4 0>;
73 esdhc: esdhc@1560000 {
74 compatible = "fsl,esdhc";
75 reg = <0x0 0x1560000 0x0 0x10000>;
76 interrupts = <0 62 0x4>;
82 compatible = "fsl,qoriq-gpio";
83 reg = <0x0 0x2300000 0x0 0x10000>;
84 interrupts = <0 66 4>;
88 #interrupt-cells = <2>;
92 compatible = "fsl,qoriq-gpio";
93 reg = <0x0 0x2310000 0x0 0x10000>;
94 interrupts = <0 67 4>;
98 #interrupt-cells = <2>;
101 gpio2: gpio@2320000 {
102 compatible = "fsl,qoriq-gpio";
103 reg = <0x0 0x2320000 0x0 0x10000>;
104 interrupts = <0 68 4>;
107 interrupt-controller;
108 #interrupt-cells = <2>;
111 gpio3: gpio@2330000 {
112 compatible = "fsl,qoriq-gpio";
113 reg = <0x0 0x2330000 0x0 0x10000>;
114 interrupts = <0 134 4>;
117 interrupt-controller;
118 #interrupt-cells = <2>;
122 compatible = "fsl,ifc", "simple-bus";
123 reg = <0x0 0x1530000 0x0 0x10000>;
124 interrupts = <0 43 0x4>;
128 compatible = "fsl,vf610-i2c";
129 #address-cells = <1>;
131 reg = <0x0 0x2180000 0x0 0x10000>;
132 interrupts = <0 56 0x4>;
134 clocks = <&clockgen 4 0>;
139 compatible = "fsl,vf610-i2c";
140 #address-cells = <1>;
142 reg = <0x0 0x2190000 0x0 0x10000>;
143 interrupts = <0 57 0x4>;
145 clocks = <&clockgen 4 0>;
150 compatible = "fsl,vf610-i2c";
151 #address-cells = <1>;
153 reg = <0x0 0x21a0000 0x0 0x10000>;
154 interrupts = <0 58 0x4>;
156 clocks = <&clockgen 4 0>;
161 compatible = "fsl,vf610-i2c";
162 #address-cells = <1>;
164 reg = <0x0 0x21b0000 0x0 0x10000>;
165 interrupts = <0 59 0x4>;
167 clocks = <&clockgen 4 0>;
171 duart0: serial@21c0500 {
172 compatible = "fsl,ns16550", "ns16550a";
173 reg = <0x00 0x21c0500 0x0 0x100>;
174 interrupts = <0 54 0x4>;
175 clocks = <&clockgen 4 0>;
178 duart1: serial@21c0600 {
179 compatible = "fsl,ns16550", "ns16550a";
180 reg = <0x00 0x21c0600 0x0 0x100>;
181 interrupts = <0 54 0x4>;
182 clocks = <&clockgen 4 0>;
185 duart2: serial@21d0500 {
186 compatible = "fsl,ns16550", "ns16550a";
187 reg = <0x0 0x21d0500 0x0 0x100>;
188 interrupts = <0 55 0x4>;
189 clocks = <&clockgen 4 0>;
192 duart3: serial@21d0600 {
193 compatible = "fsl,ns16550", "ns16550a";
194 reg = <0x0 0x21d0600 0x0 0x100>;
195 interrupts = <0 55 0x4>;
196 clocks = <&clockgen 4 0>;
199 lpuart0: serial@2950000 {
200 compatible = "fsl,ls1021a-lpuart";
201 reg = <0x0 0x2950000 0x0 0x1000>;
202 interrupts = <0 48 0x4>;
203 clocks = <&clockgen 4 0>;
208 lpuart1: serial@2960000 {
209 compatible = "fsl,ls1021a-lpuart";
210 reg = <0x0 0x2960000 0x0 0x1000>;
211 interrupts = <0 49 0x4>;
212 clocks = <&clockgen 4 1>;
217 lpuart2: serial@2970000 {
218 compatible = "fsl,ls1021a-lpuart";
219 reg = <0x0 0x2970000 0x0 0x1000>;
220 interrupts = <0 50 0x4>;
221 clocks = <&clockgen 4 1>;
226 lpuart3: serial@2980000 {
227 compatible = "fsl,ls1021a-lpuart";
228 reg = <0x0 0x2980000 0x0 0x1000>;
229 interrupts = <0 51 0x4>;
230 clocks = <&clockgen 4 1>;
235 lpuart4: serial@2990000 {
236 compatible = "fsl,ls1021a-lpuart";
237 reg = <0x0 0x2990000 0x0 0x1000>;
238 interrupts = <0 52 0x4>;
239 clocks = <&clockgen 4 1>;
244 lpuart5: serial@29a0000 {
245 compatible = "fsl,ls1021a-lpuart";
246 reg = <0x0 0x29a0000 0x0 0x1000>;
247 interrupts = <0 53 0x4>;
248 clocks = <&clockgen 4 1>;
253 qspi: quadspi@1550000 {
254 compatible = "fsl,ls1021a-qspi";
255 #address-cells = <1>;
257 reg = <0x0 0x1550000 0x0 0x10000>,
258 <0x0 0x40000000 0x0 0x10000000>;
259 reg-names = "QuadSPI", "QuadSPI-memory";
264 compatible = "fsl,layerscape-dwc3";
265 reg = <0x0 0x2f00000 0x0 0x10000>;
266 interrupts = <0 60 4>;
271 compatible = "fsl,layerscape-dwc3";
272 reg = <0x0 0x3000000 0x0 0x10000>;
273 interrupts = <0 61 4>;
278 compatible = "fsl,layerscape-dwc3";
279 reg = <0x0 0x3100000 0x0 0x10000>;
280 interrupts = <0 63 4>;
284 pcie1: pcie@3400000 {
285 compatible = "fsl,ls-pcie", "snps,dw-pcie";
286 reg = <0x00 0x03400000 0x0 0x80000 /* dbi registers */
287 0x00 0x03480000 0x0 0x40000 /* lut registers */
288 0x00 0x034c0000 0x0 0x40000 /* pf controls registers */
289 0x40 0x00000000 0x0 0x20000>; /* configuration space */
290 reg-names = "dbi", "lut", "ctrl", "config";
292 #address-cells = <3>;
295 bus-range = <0x0 0xff>;
296 ranges = <0x81000000 0x0 0x00000000 0x40 0x00020000 0x0 0x00010000 /* downstream I/O */
297 0x82000000 0x0 0x40000000 0x40 0x40000000 0x0 0x40000000>; /* non-prefetchable memory */
300 pcie_ep1: pcie_ep@3400000 {
301 compatible = "fsl,ls-pcie-ep";
302 reg = <0x00 0x03400000 0x0 0x80000
303 0x00 0x034c0000 0x0 0x40000
304 0x40 0x00000000 0x8 0x00000000>;
305 reg-names = "regs", "ctrl", "addr_space";
306 num-ib-windows = <6>;
307 num-ob-windows = <8>;
311 pcie2: pcie@3500000 {
312 compatible = "fsl,ls-pcie", "snps,dw-pcie";
313 reg = <0x00 0x03500000 0x0 0x80000 /* dbi registers */
314 0x00 0x03580000 0x0 0x40000 /* lut registers */
315 0x00 0x035c0000 0x0 0x40000 /* pf controls registers */
316 0x48 0x00000000 0x0 0x20000>; /* configuration space */
317 reg-names = "dbi", "lut", "ctrl", "config";
319 #address-cells = <3>;
323 bus-range = <0x0 0xff>;
324 ranges = <0x81000000 0x0 0x00000000 0x48 0x00020000 0x0 0x00010000 /* downstream I/O */
325 0x82000000 0x0 0x40000000 0x48 0x40000000 0x0 0x40000000>; /* non-prefetchable memory */
328 pcie_ep2: pcie_ep@3500000 {
329 compatible = "fsl,ls-pcie-ep";
330 reg = <0x00 0x03500000 0x0 0x80000
331 0x00 0x035c0000 0x0 0x40000
332 0x48 0x00000000 0x8 0x00000000>;
333 reg-names = "regs", "ctrl", "addr_space";
334 num-ib-windows = <6>;
335 num-ob-windows = <8>;
339 pcie3: pcie@3600000 {
340 compatible = "fsl,ls-pcie", "snps,dw-pcie";
341 reg = <0x00 0x03600000 0x0 0x80000 /* dbi registers */
342 0x00 0x03680000 0x0 0x40000 /* lut registers */
343 0x00 0x036c0000 0x0 0x40000 /* pf controls registers */
344 0x50 0x00000000 0x0 0x20000>; /* configuration space */
345 reg-names = "dbi", "lut", "ctrl", "config";
347 #address-cells = <3>;
350 bus-range = <0x0 0xff>;
351 ranges = <0x81000000 0x0 0x00000000 0x50 0x00020000 0x0 0x00010000 /* downstream I/O */
352 0x82000000 0x0 0x40000000 0x50 0x40000000 0x0 0x40000000>; /* non-prefetchable memory */
355 pcie_ep3: pcie_ep@3600000 {
356 compatible = "fsl,ls-pcie-ep";
357 reg = <0x00 0x03600000 0x0 0x80000
358 0x00 0x036c0000 0x0 0x40000
359 0x50 0x00000000 0x8 0x00000000>;
360 reg-names = "regs", "ctrl", "addr_space";
361 num-ib-windows = <6>;
362 num-ob-windows = <8>;
367 compatible = "fsl,ls1046a-ahci";
368 reg = <0x0 0x3200000 0x0 0x10000 /* ccsr sata base */
369 0x0 0x20140520 0x0 0x4>; /* ecc sata addr*/
370 reg-names = "sata-base", "ecc-addr";
371 interrupts = <0 69 4>;
372 clocks = <&clockgen 4 1>;