summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIoana Ciornei <ioana.ciornei@nxp.com>2026-07-17 15:06:28 +0300
committerFrank Li <Frank.Li@nxp.com>2026-07-27 11:49:13 -0400
commit8f69555ef54c59aa0207cdd0e15939417730a4e4 (patch)
tree6e635dd789eb74b125b969965ca833147655a8f7
parent9f0f43baf1ed556e6b16ddd5403dc44c5f21eb6a (diff)
downloadlinux-next-8f69555ef54c59aa0207cdd0e15939417730a4e4.tar.gz
linux-next-8f69555ef54c59aa0207cdd0e15939417730a4e4.zip
arm64: dts: lx2160a: extract the PCIe from LX2160A Rev2 into a separate file
The LX2160A Rev2 SoC changed the PCIe controllers used. This difference is reflected in the fsl-lx2160a-rev2.dtsi file which modifies the relevant dt nodes so that they match the actual HW. Extract these modifications into a separate dtsi file as a first step into a complete overhaul of the LX216xA related dts files with the intent to not use delete-node or delete-property. No final dtb changes are expected with this patch. Signed-off-by: Ioana Ciornei <ioana.ciornei@nxp.com> Signed-off-by: Frank Li <Frank.Li@nxp.com>
-rw-r--r--arch/arm64/boot/dts/freescale/fsl-lx2160a-rev2.dtsi185
-rw-r--r--arch/arm64/boot/dts/freescale/fsl-lx216xa-pcie-gen3.dtsi187
2 files changed, 188 insertions, 184 deletions
diff --git a/arch/arm64/boot/dts/freescale/fsl-lx2160a-rev2.dtsi b/arch/arm64/boot/dts/freescale/fsl-lx2160a-rev2.dtsi
index 3d2637fee2d3..c2a18cfd8efc 100644
--- a/arch/arm64/boot/dts/freescale/fsl-lx2160a-rev2.dtsi
+++ b/arch/arm64/boot/dts/freescale/fsl-lx2160a-rev2.dtsi
@@ -7,187 +7,4 @@
/dts-v1/;
#include "fsl-lx2160a.dtsi"
-
-&pcie1 {
- compatible = "fsl,lx2160ar2-pcie", "fsl,ls2088a-pcie";
- reg = <0x00 0x03400000 0x0 0x00100000 /* controller registers */
- 0x80 0x00000000 0x0 0x00002000>; /* configuration space */
- reg-names = "regs", "config";
-
- ranges = /* 16-Bit IO Window */
- <0x81000000 0x00 0x00000000 0x80 0x00010000 0x00 0x00010000>,
- /* 32-Bit - non-prefetchable */
- <0x82000000 0x00 0x40000000 0x80 0x40000000 0x00 0x40000000>,
- /* 64-Bit - prefetchable - 16GB */
- <0xC3000000 0x84 0x00000000 0x84 0x00000000 0x04 0x00000000>;
-
- interrupts = <GIC_SPI 108 IRQ_TYPE_LEVEL_HIGH>;
- interrupt-names = "intr";
-
- /delete-property/ apio-wins;
- /delete-property/ ppio-wins;
-};
-
-&pcie2 {
- compatible = "fsl,lx2160ar2-pcie", "fsl,ls2088a-pcie";
- reg = <0x00 0x03500000 0x0 0x00100000 /* controller registers */
- 0x88 0x00000000 0x0 0x00002000>; /* configuration space */
- reg-names = "regs", "config";
-
- ranges = /* 16-Bit IO Window */
- <0x81000000 0x00 0x00000000 0x88 0x00010000 0x00 0x00010000>,
- /* 32-Bit - non-prefetchable */
- <0x82000000 0x00 0x40000000 0x88 0x40000000 0x00 0x40000000>,
- /* 64-Bit - prefetchable - 16GB */
- <0xC3000000 0x8c 0x00000000 0x8c 0x00000000 0x04 0x00000000>;
-
- interrupts = <GIC_SPI 113 IRQ_TYPE_LEVEL_HIGH>;
- interrupt-names = "intr";
-
- /delete-property/ apio-wins;
- /delete-property/ ppio-wins;
-};
-
-&pcie3 {
- compatible = "fsl,lx2160ar2-pcie", "fsl,ls2088a-pcie";
- reg = <0x00 0x03600000 0x0 0x00100000 /* controller registers */
- 0x90 0x00000000 0x0 0x00002000>; /* configuration space */
- reg-names = "regs", "config";
-
- ranges = /* 16-Bit IO Window */
- <0x81000000 0x00 0x00000000 0x90 0x00010000 0x00 0x00010000>,
- /* 32-Bit - non-prefetchable */
- <0x82000000 0x00 0x40000000 0x90 0x40000000 0x00 0x40000000>,
- /* 64-Bit - prefetchable - 16GB */
- <0xC3000000 0x94 0x00000000 0x94 0x00000000 0x04 0x00000000>;
-
- interrupts = <GIC_SPI 118 IRQ_TYPE_LEVEL_HIGH>;
- interrupt-names = "intr";
-
- /delete-property/ apio-wins;
- /delete-property/ ppio-wins;
-};
-
-
-&pcie4 {
- compatible = "fsl,lx2160ar2-pcie", "fsl,ls2088a-pcie";
- reg = <0x00 0x03700000 0x0 0x00100000 /* controller registers */
- 0x98 0x00000000 0x0 0x00002000>; /* configuration space */
- reg-names = "regs", "config";
-
- ranges = /* 16-Bit IO Window */
- <0x81000000 0x00 0x00000000 0x98 0x00010000 0x00 0x00010000>,
- /* 32-Bit - non-prefetchable */
- <0x82000000 0x00 0x40000000 0x98 0x40000000 0x00 0x40000000>,
- /* 64-Bit - prefetchable - 16GB */
- <0xC3000000 0x9c 0x00000000 0x9c 0x00000000 0x04 0x00000000>;
-
- interrupts = <GIC_SPI 123 IRQ_TYPE_LEVEL_HIGH>;
- interrupt-names = "intr";
-
- /delete-property/ apio-wins;
- /delete-property/ ppio-wins;
-};
-
-&pcie5 {
- compatible = "fsl,lx2160ar2-pcie", "fsl,ls2088a-pcie";
- reg = <0x00 0x03800000 0x0 0x00100000 /* controller registers */
- 0xa0 0x00000000 0x0 0x00002000>; /* configuration space */
- reg-names = "regs", "config";
-
- ranges = /* 16-Bit IO Window */
- <0x81000000 0x00 0x00000000 0xa0 0x00010000 0x00 0x00010000>,
- /* 32-Bit - non-prefetchable */
- <0x82000000 0x00 0x40000000 0xa0 0x40000000 0x00 0x40000000>,
- /* 64-Bit - prefetchable - 16GB */
- <0xC3000000 0xa4 0x00000000 0xa4 0x00000000 0x04 0x00000000>;
-
- interrupts = <GIC_SPI 128 IRQ_TYPE_LEVEL_HIGH>;
- interrupt-names = "intr";
-
- /delete-property/ apio-wins;
- /delete-property/ ppio-wins;
-};
-
-&pcie6 {
- compatible = "fsl,lx2160ar2-pcie", "fsl,ls2088a-pcie";
- reg = <0x00 0x03900000 0x0 0x00100000 /* controller registers */
- 0xa8 0x00000000 0x0 0x00002000>; /* configuration space */
- reg-names = "regs", "config";
-
- ranges = /* 16-Bit IO Window */
- <0x81000000 0x00 0x00000000 0xa8 0x00010000 0x00 0x00010000>,
- /* 32-Bit - non-prefetchable */
- <0x82000000 0x00 0x40000000 0xa8 0x40000000 0x00 0x40000000>,
- /* 64-Bit - prefetchable - 16GB */
- <0xC3000000 0xac 0x00000000 0xac 0x00000000 0x04 0x00000000>;
-
- interrupts = <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>;
- interrupt-names = "intr";
-
- /delete-property/ apio-wins;
- /delete-property/ ppio-wins;
-};
-
-&soc {
- pcie_ep1: pcie-ep@3400000 {
- compatible = "fsl,lx2160ar2-pcie-ep";
- reg = <0x00 0x03400000 0x0 0x00100000
- 0x80 0x00000000 0x8 0x00000000>;
- reg-names = "regs", "addr_space";
- num-ob-windows = <8>;
- num-ib-windows = <8>;
- status = "disabled";
- };
-
- pcie_ep2: pcie-ep@3500000 {
- compatible = "fsl,lx2160ar2-pcie-ep";
- reg = <0x00 0x03500000 0x0 0x00100000
- 0x88 0x00000000 0x8 0x00000000>;
- reg-names = "regs", "addr_space";
- num-ob-windows = <8>;
- num-ib-windows = <8>;
- status = "disabled";
- };
-
- pcie_ep3: pcie-ep@3600000 {
- compatible = "fsl,lx2160ar2-pcie-ep";
- reg = <0x00 0x03600000 0x0 0x00100000
- 0x90 0x00000000 0x8 0x00000000>;
- reg-names = "regs", "addr_space";
- num-ob-windows = <256>;
- num-ib-windows = <24>;
- status = "disabled";
- };
-
- pcie_ep4: pcie-ep@3700000 {
- compatible = "fsl,lx2160ar2-pcie-ep";
- reg = <0x00 0x03700000 0x0 0x00100000
- 0x98 0x00000000 0x8 0x00000000>;
- reg-names = "regs", "addr_space";
- num-ob-windows = <8>;
- num-ib-windows = <8>;
- status = "disabled";
- };
-
-
- pcie_ep5: pcie-ep@3800000 {
- compatible = "fsl,lx2160ar2-pcie-ep";
- reg = <0x00 0x03800000 0x0 0x00100000
- 0xa0 0x00000000 0x8 0x00000000>;
- reg-names = "regs", "addr_space";
- num-ob-windows = <256>;
- num-ib-windows = <24>;
- status = "disabled";
- };
-
- pcie_ep6: pcie-ep@3900000 {
- compatible = "fsl,lx2160ar2-pcie-ep";
- reg = <0x00 0x03900000 0x0 0x00100000
- 0xa8 0x00000000 0x8 0x00000000>;
- reg-names = "regs", "addr_space";
- num-ob-windows = <8>;
- num-ib-windows = <8>;
- status = "disabled";
- };
-};
+#include "fsl-lx216xa-pcie-gen3.dtsi"
diff --git a/arch/arm64/boot/dts/freescale/fsl-lx216xa-pcie-gen3.dtsi b/arch/arm64/boot/dts/freescale/fsl-lx216xa-pcie-gen3.dtsi
new file mode 100644
index 000000000000..f405b21e68fc
--- /dev/null
+++ b/arch/arm64/boot/dts/freescale/fsl-lx216xa-pcie-gen3.dtsi
@@ -0,0 +1,187 @@
+// SPDX-License-Identifier: (GPL-2.0 OR MIT)
+//
+// Device Tree file describing the PCIe IPs found on the LX2160A Rev2 and LX2162A SoCs
+//
+// Copyright 2026 NXP
+
+&pcie1 {
+ compatible = "fsl,lx2160ar2-pcie", "fsl,ls2088a-pcie";
+ reg = <0x00 0x03400000 0x0 0x00100000 /* controller registers */
+ 0x80 0x00000000 0x0 0x00002000>; /* configuration space */
+ reg-names = "regs", "config";
+
+ ranges = /* 16-Bit IO Window */
+ <0x81000000 0x00 0x00000000 0x80 0x00010000 0x00 0x00010000>,
+ /* 32-Bit - non-prefetchable */
+ <0x82000000 0x00 0x40000000 0x80 0x40000000 0x00 0x40000000>,
+ /* 64-Bit - prefetchable - 16GB */
+ <0xC3000000 0x84 0x00000000 0x84 0x00000000 0x04 0x00000000>;
+
+ interrupts = <GIC_SPI 108 IRQ_TYPE_LEVEL_HIGH>;
+ interrupt-names = "intr";
+
+ /delete-property/ apio-wins;
+ /delete-property/ ppio-wins;
+};
+
+&pcie2 {
+ compatible = "fsl,lx2160ar2-pcie", "fsl,ls2088a-pcie";
+ reg = <0x00 0x03500000 0x0 0x00100000 /* controller registers */
+ 0x88 0x00000000 0x0 0x00002000>; /* configuration space */
+ reg-names = "regs", "config";
+
+ ranges = /* 16-Bit IO Window */
+ <0x81000000 0x00 0x00000000 0x88 0x00010000 0x00 0x00010000>,
+ /* 32-Bit - non-prefetchable */
+ <0x82000000 0x00 0x40000000 0x88 0x40000000 0x00 0x40000000>,
+ /* 64-Bit - prefetchable - 16GB */
+ <0xC3000000 0x8c 0x00000000 0x8c 0x00000000 0x04 0x00000000>;
+
+ interrupts = <GIC_SPI 113 IRQ_TYPE_LEVEL_HIGH>;
+ interrupt-names = "intr";
+
+ /delete-property/ apio-wins;
+ /delete-property/ ppio-wins;
+};
+
+&pcie3 {
+ compatible = "fsl,lx2160ar2-pcie", "fsl,ls2088a-pcie";
+ reg = <0x00 0x03600000 0x0 0x00100000 /* controller registers */
+ 0x90 0x00000000 0x0 0x00002000>; /* configuration space */
+ reg-names = "regs", "config";
+
+ ranges = /* 16-Bit IO Window */
+ <0x81000000 0x00 0x00000000 0x90 0x00010000 0x00 0x00010000>,
+ /* 32-Bit - non-prefetchable */
+ <0x82000000 0x00 0x40000000 0x90 0x40000000 0x00 0x40000000>,
+ /* 64-Bit - prefetchable - 16GB */
+ <0xC3000000 0x94 0x00000000 0x94 0x00000000 0x04 0x00000000>;
+
+ interrupts = <GIC_SPI 118 IRQ_TYPE_LEVEL_HIGH>;
+ interrupt-names = "intr";
+
+ /delete-property/ apio-wins;
+ /delete-property/ ppio-wins;
+};
+
+&pcie4 {
+ compatible = "fsl,lx2160ar2-pcie", "fsl,ls2088a-pcie";
+ reg = <0x00 0x03700000 0x0 0x00100000 /* controller registers */
+ 0x98 0x00000000 0x0 0x00002000>; /* configuration space */
+ reg-names = "regs", "config";
+
+ ranges = /* 16-Bit IO Window */
+ <0x81000000 0x00 0x00000000 0x98 0x00010000 0x00 0x00010000>,
+ /* 32-Bit - non-prefetchable */
+ <0x82000000 0x00 0x40000000 0x98 0x40000000 0x00 0x40000000>,
+ /* 64-Bit - prefetchable - 16GB */
+ <0xC3000000 0x9c 0x00000000 0x9c 0x00000000 0x04 0x00000000>;
+
+ interrupts = <GIC_SPI 123 IRQ_TYPE_LEVEL_HIGH>;
+ interrupt-names = "intr";
+
+ /delete-property/ apio-wins;
+ /delete-property/ ppio-wins;
+};
+
+&pcie5 {
+ compatible = "fsl,lx2160ar2-pcie", "fsl,ls2088a-pcie";
+ reg = <0x00 0x03800000 0x0 0x00100000 /* controller registers */
+ 0xa0 0x00000000 0x0 0x00002000>; /* configuration space */
+ reg-names = "regs", "config";
+
+ ranges = /* 16-Bit IO Window */
+ <0x81000000 0x00 0x00000000 0xa0 0x00010000 0x00 0x00010000>,
+ /* 32-Bit - non-prefetchable */
+ <0x82000000 0x00 0x40000000 0xa0 0x40000000 0x00 0x40000000>,
+ /* 64-Bit - prefetchable - 16GB */
+ <0xC3000000 0xa4 0x00000000 0xa4 0x00000000 0x04 0x00000000>;
+
+ interrupts = <GIC_SPI 128 IRQ_TYPE_LEVEL_HIGH>;
+ interrupt-names = "intr";
+
+ /delete-property/ apio-wins;
+ /delete-property/ ppio-wins;
+};
+
+&pcie6 {
+ compatible = "fsl,lx2160ar2-pcie", "fsl,ls2088a-pcie";
+ reg = <0x00 0x03900000 0x0 0x00100000 /* controller registers */
+ 0xa8 0x00000000 0x0 0x00002000>; /* configuration space */
+ reg-names = "regs", "config";
+
+ ranges = /* 16-Bit IO Window */
+ <0x81000000 0x00 0x00000000 0xa8 0x00010000 0x00 0x00010000>,
+ /* 32-Bit - non-prefetchable */
+ <0x82000000 0x00 0x40000000 0xa8 0x40000000 0x00 0x40000000>,
+ /* 64-Bit - prefetchable - 16GB */
+ <0xC3000000 0xac 0x00000000 0xac 0x00000000 0x04 0x00000000>;
+
+ interrupts = <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>;
+ interrupt-names = "intr";
+
+ /delete-property/ apio-wins;
+ /delete-property/ ppio-wins;
+};
+
+&soc {
+ pcie_ep1: pcie-ep@3400000 {
+ compatible = "fsl,lx2160ar2-pcie-ep";
+ reg = <0x00 0x03400000 0x0 0x00100000
+ 0x80 0x00000000 0x8 0x00000000>;
+ reg-names = "regs", "addr_space";
+ num-ob-windows = <8>;
+ num-ib-windows = <8>;
+ status = "disabled";
+ };
+
+ pcie_ep2: pcie-ep@3500000 {
+ compatible = "fsl,lx2160ar2-pcie-ep";
+ reg = <0x00 0x03500000 0x0 0x00100000
+ 0x88 0x00000000 0x8 0x00000000>;
+ reg-names = "regs", "addr_space";
+ num-ob-windows = <8>;
+ num-ib-windows = <8>;
+ status = "disabled";
+ };
+
+ pcie_ep3: pcie-ep@3600000 {
+ compatible = "fsl,lx2160ar2-pcie-ep";
+ reg = <0x00 0x03600000 0x0 0x00100000
+ 0x90 0x00000000 0x8 0x00000000>;
+ reg-names = "regs", "addr_space";
+ num-ob-windows = <256>;
+ num-ib-windows = <24>;
+ status = "disabled";
+ };
+
+ pcie_ep4: pcie-ep@3700000 {
+ compatible = "fsl,lx2160ar2-pcie-ep";
+ reg = <0x00 0x03700000 0x0 0x00100000
+ 0x98 0x00000000 0x8 0x00000000>;
+ reg-names = "regs", "addr_space";
+ num-ob-windows = <8>;
+ num-ib-windows = <8>;
+ status = "disabled";
+ };
+
+ pcie_ep5: pcie-ep@3800000 {
+ compatible = "fsl,lx2160ar2-pcie-ep";
+ reg = <0x00 0x03800000 0x0 0x00100000
+ 0xa0 0x00000000 0x8 0x00000000>;
+ reg-names = "regs", "addr_space";
+ num-ob-windows = <256>;
+ num-ib-windows = <24>;
+ status = "disabled";
+ };
+
+ pcie_ep6: pcie-ep@3900000 {
+ compatible = "fsl,lx2160ar2-pcie-ep";
+ reg = <0x00 0x03900000 0x0 0x00100000
+ 0xa8 0x00000000 0x8 0x00000000>;
+ reg-names = "regs", "addr_space";
+ num-ob-windows = <8>;
+ num-ib-windows = <8>;
+ status = "disabled";
+ };
+};