* [PATCH 0/8] arm64: dts: imx8: create common imx-pcie[0,1]-ep overlay file
@ 2025-03-31 19:02 Frank Li
2025-03-31 19:02 ` [PATCH 1/8] arm64: dts: imx8: create unified pcie0 and pcie0_ep label for all chips Frank Li
` (8 more replies)
0 siblings, 9 replies; 10+ messages in thread
From: Frank Li @ 2025-03-31 19:02 UTC (permalink / raw)
To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam
Cc: devicetree, imx, linux-arm-kernel, linux-kernel, hongxing.zhu,
Frank Li
Use common imx-pcie[0,1]-ep overlay file to enable PCIe EP function for
all imx8 boards.
unified pcie label name as below
imx8qm
pciea -> pcie0
pcieb -> pcie1
imx8qxp/imx8dxl
pcieb -> pcie0
imx8mp
pcie -> pcie0
other boards already use pcie0 and pcie1 naming. Orignal label still exist
to keep back compatiblity.
Signed-off-by: Frank Li <Frank.Li@nxp.com>
---
Frank Li (8):
arm64: dts: imx8: create unified pcie0 and pcie0_ep label for all chips
arm64: dts: imx8dxl-ss-hsio: correct irq number for imx8dxl
arm64: dts: imx8dxl-evk: Add pcie0-ep node and use unified pcie0 label
arm64: dts: imx8: use common imx-pcie0-ep.dtso to enable PCI ep function
arm64: dts: imx95: add pcie1 ep overlay file and create pcie-ep dtb files
arm64: dts: imx8mm-evk: add pcie0-ep node and apply pcie0-ep overlay file
arm64: dts: imx8mq: add pcie0-ep node
arm64: dts: imx8mq-evk: add pcie[0,1]-ep nodes
arch/arm64/boot/dts/freescale/Makefile | 22 ++++++++++++--
.../{imx8mp-evk-pcie-ep.dtso => imx-pcie0-ep.dtso} | 6 ++--
arch/arm64/boot/dts/freescale/imx-pcie1-ep.dtso | 15 ++++++++++
arch/arm64/boot/dts/freescale/imx8dxl-evk.dts | 12 +++++++-
arch/arm64/boot/dts/freescale/imx8dxl-ss-hsio.dtsi | 25 +++++++++-------
arch/arm64/boot/dts/freescale/imx8mm-evk.dtsi | 13 ++++++++
arch/arm64/boot/dts/freescale/imx8mp-evk.dts | 8 ++++-
arch/arm64/boot/dts/freescale/imx8mp.dtsi | 4 +--
arch/arm64/boot/dts/freescale/imx8mq-evk.dts | 20 +++++++++++++
arch/arm64/boot/dts/freescale/imx8mq.dtsi | 35 ++++++++++++++++++++++
arch/arm64/boot/dts/freescale/imx8qm-ss-hsio.dtsi | 6 ++--
.../boot/dts/freescale/imx8qxp-mek-pcie-ep.dtso | 22 --------------
arch/arm64/boot/dts/freescale/imx8qxp-mek.dts | 11 ++++++-
arch/arm64/boot/dts/freescale/imx8qxp-ss-hsio.dtsi | 6 ++++
arch/arm64/boot/dts/freescale/imx95-15x15-evk.dts | 7 +++++
arch/arm64/boot/dts/freescale/imx95-19x19-evk.dts | 14 +++++++++
16 files changed, 180 insertions(+), 46 deletions(-)
---
base-commit: e90298c336486695a47a3c9d968e33631c2d2b5c
change-id: 20250331-imx8_pcie_ep_dts-04079a845a9e
Best regards,
---
Frank Li <Frank.Li@nxp.com>
^ permalink raw reply [flat|nested] 10+ messages in thread
* [PATCH 1/8] arm64: dts: imx8: create unified pcie0 and pcie0_ep label for all chips
2025-03-31 19:02 [PATCH 0/8] arm64: dts: imx8: create common imx-pcie[0,1]-ep overlay file Frank Li
@ 2025-03-31 19:02 ` Frank Li
2025-03-31 19:02 ` [PATCH 2/8] arm64: dts: imx8dxl-ss-hsio: correct irq number for imx8dxl Frank Li
` (7 subsequent siblings)
8 siblings, 0 replies; 10+ messages in thread
From: Frank Li @ 2025-03-31 19:02 UTC (permalink / raw)
To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam
Cc: devicetree, imx, linux-arm-kernel, linux-kernel, hongxing.zhu,
Frank Li
Add unified pcie<n> and pcie<n>_ep label for existed chipes to prepare
applied one overay file to enable EP function.
Signed-off-by: Frank Li <Frank.Li@nxp.com>
---
arch/arm64/boot/dts/freescale/imx8dxl-ss-hsio.dtsi | 23 ++++++++++++----------
arch/arm64/boot/dts/freescale/imx8mp.dtsi | 4 ++--
arch/arm64/boot/dts/freescale/imx8qm-ss-hsio.dtsi | 6 +++---
arch/arm64/boot/dts/freescale/imx8qxp-ss-hsio.dtsi | 6 ++++++
4 files changed, 24 insertions(+), 15 deletions(-)
diff --git a/arch/arm64/boot/dts/freescale/imx8dxl-ss-hsio.dtsi b/arch/arm64/boot/dts/freescale/imx8dxl-ss-hsio.dtsi
index afbe962d78ce1..67c5c6029cd9b 100644
--- a/arch/arm64/boot/dts/freescale/imx8dxl-ss-hsio.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx8dxl-ss-hsio.dtsi
@@ -37,15 +37,18 @@ hsio_phy: phy@5f1a0000 {
power-domains = <&pd IMX_SC_R_SERDES_1>;
status = "disabled";
};
-};
-&pcieb {
- #interrupt-cells = <1>;
- interrupts = <GIC_SPI 44 IRQ_TYPE_LEVEL_HIGH>;
- interrupt-names = "msi";
- interrupt-map = <0 0 0 1 &gic 0 47 4>,
- <0 0 0 2 &gic 0 48 4>,
- <0 0 0 3 &gic 0 49 4>,
- <0 0 0 4 &gic 0 50 4>;
- interrupt-map-mask = <0 0 0 0x7>;
+ pcie0: pcie@5f010000 {
+ #interrupt-cells = <1>;
+ interrupts = <GIC_SPI 44 IRQ_TYPE_LEVEL_HIGH>;
+ interrupt-names = "msi";
+ interrupt-map = <0 0 0 1 &gic 0 47 4>,
+ <0 0 0 2 &gic 0 48 4>,
+ <0 0 0 3 &gic 0 49 4>,
+ <0 0 0 4 &gic 0 50 4>;
+ interrupt-map-mask = <0 0 0 0x7>;
+ };
+
+ pcie0_ep: pcie-ep@5f010000 {
+ };
};
diff --git a/arch/arm64/boot/dts/freescale/imx8mp.dtsi b/arch/arm64/boot/dts/freescale/imx8mp.dtsi
index ce6793b2d57ee..b955db19f3bd5 100644
--- a/arch/arm64/boot/dts/freescale/imx8mp.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx8mp.dtsi
@@ -2155,7 +2155,7 @@ hdmi_tx_phy: phy@32fdff00 {
};
};
- pcie: pcie@33800000 {
+ pcie0: pcie: pcie@33800000 {
compatible = "fsl,imx8mp-pcie";
reg = <0x33800000 0x400000>, <0x1ff00000 0x80000>;
reg-names = "dbi", "config";
@@ -2193,7 +2193,7 @@ pcie: pcie@33800000 {
status = "disabled";
};
- pcie_ep: pcie-ep@33800000 {
+ pcie0_ep: pcie_ep: pcie-ep@33800000 {
compatible = "fsl,imx8mp-pcie-ep";
reg = <0x33800000 0x100000>,
<0x18000000 0x8000000>,
diff --git a/arch/arm64/boot/dts/freescale/imx8qm-ss-hsio.dtsi b/arch/arm64/boot/dts/freescale/imx8qm-ss-hsio.dtsi
index e80f722dbe65f..50c0f6b0f0bdc 100644
--- a/arch/arm64/boot/dts/freescale/imx8qm-ss-hsio.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx8qm-ss-hsio.dtsi
@@ -12,7 +12,7 @@ &hsio_subsys {
#address-cells = <1>;
#size-cells = <1>;
- pciea: pcie@5f000000 {
+ pcie0: pciea: pcie@5f000000 {
compatible = "fsl,imx8q-pcie";
reg = <0x5f000000 0x10000>,
<0x4ff00000 0x80000>;
@@ -42,7 +42,7 @@ pciea: pcie@5f000000 {
status = "disabled";
};
- pciea_ep: pcie-ep@5f000000 {
+ pcie0_ep: pciea_ep: pcie-ep@5f000000 {
compatible = "fsl,imx8q-pcie-ep";
reg = <0x5f000000 0x00010000>,
<0x40000000 0x10000000>;
@@ -61,7 +61,7 @@ pciea_ep: pcie-ep@5f000000 {
status = "disabled";
};
- pcieb: pcie@5f010000 {
+ pcie1: pcieb: pcie@5f010000 {
compatible = "fsl,imx8q-pcie";
reg = <0x5f010000 0x10000>,
<0x8ff00000 0x80000>;
diff --git a/arch/arm64/boot/dts/freescale/imx8qxp-ss-hsio.dtsi b/arch/arm64/boot/dts/freescale/imx8qxp-ss-hsio.dtsi
index 47fc6e0cff4a1..255b8c91c88cc 100644
--- a/arch/arm64/boot/dts/freescale/imx8qxp-ss-hsio.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx8qxp-ss-hsio.dtsi
@@ -38,4 +38,10 @@ hsio_phy: phy@5f1a0000 {
power-domains = <&pd IMX_SC_R_SERDES_1>;
status = "disabled";
};
+
+ pcie0: pcie@5f010000 {
+ };
+
+ pcie0_ep: pcie-ep@5f010000 {
+ };
};
--
2.34.1
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [PATCH 2/8] arm64: dts: imx8dxl-ss-hsio: correct irq number for imx8dxl
2025-03-31 19:02 [PATCH 0/8] arm64: dts: imx8: create common imx-pcie[0,1]-ep overlay file Frank Li
2025-03-31 19:02 ` [PATCH 1/8] arm64: dts: imx8: create unified pcie0 and pcie0_ep label for all chips Frank Li
@ 2025-03-31 19:02 ` Frank Li
2025-03-31 19:02 ` [PATCH 3/8] arm64: dts: imx8dxl-evk: Add pcie0-ep node and use unified pcie0 label Frank Li
` (6 subsequent siblings)
8 siblings, 0 replies; 10+ messages in thread
From: Frank Li @ 2025-03-31 19:02 UTC (permalink / raw)
To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam
Cc: devicetree, imx, linux-arm-kernel, linux-kernel, hongxing.zhu,
Frank Li
i.MX8DXL use difference irq number for PCIe EP DMA.
Signed-off-by: Frank Li <Frank.Li@nxp.com>
---
arch/arm64/boot/dts/freescale/imx8dxl-ss-hsio.dtsi | 2 ++
1 file changed, 2 insertions(+)
diff --git a/arch/arm64/boot/dts/freescale/imx8dxl-ss-hsio.dtsi b/arch/arm64/boot/dts/freescale/imx8dxl-ss-hsio.dtsi
index 67c5c6029cd9b..bbc6abb0fdf25 100644
--- a/arch/arm64/boot/dts/freescale/imx8dxl-ss-hsio.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx8dxl-ss-hsio.dtsi
@@ -50,5 +50,7 @@ pcie0: pcie@5f010000 {
};
pcie0_ep: pcie-ep@5f010000 {
+ interrupts = <GIC_SPI 46 IRQ_TYPE_LEVEL_HIGH>;
+ interrupt-names = "dma";
};
};
--
2.34.1
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [PATCH 3/8] arm64: dts: imx8dxl-evk: Add pcie0-ep node and use unified pcie0 label
2025-03-31 19:02 [PATCH 0/8] arm64: dts: imx8: create common imx-pcie[0,1]-ep overlay file Frank Li
2025-03-31 19:02 ` [PATCH 1/8] arm64: dts: imx8: create unified pcie0 and pcie0_ep label for all chips Frank Li
2025-03-31 19:02 ` [PATCH 2/8] arm64: dts: imx8dxl-ss-hsio: correct irq number for imx8dxl Frank Li
@ 2025-03-31 19:02 ` Frank Li
2025-03-31 19:02 ` [PATCH 4/8] arm64: dts: imx8: use common imx-pcie0-ep.dtso to enable PCI ep function Frank Li
` (5 subsequent siblings)
8 siblings, 0 replies; 10+ messages in thread
From: Frank Li @ 2025-03-31 19:02 UTC (permalink / raw)
To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam
Cc: devicetree, imx, linux-arm-kernel, linux-kernel, hongxing.zhu,
Frank Li
Use unified pcie0 label and add pcie0-ep node.
Signed-off-by: Frank Li <Frank.Li@nxp.com>
---
arch/arm64/boot/dts/freescale/imx8dxl-evk.dts | 12 +++++++++++-
1 file changed, 11 insertions(+), 1 deletion(-)
diff --git a/arch/arm64/boot/dts/freescale/imx8dxl-evk.dts b/arch/arm64/boot/dts/freescale/imx8dxl-evk.dts
index 5f3b4014e1521..b6d64d3906eaf 100644
--- a/arch/arm64/boot/dts/freescale/imx8dxl-evk.dts
+++ b/arch/arm64/boot/dts/freescale/imx8dxl-evk.dts
@@ -642,7 +642,7 @@ &lsio_gpio5 {
status = "okay";
};
-&pcieb {
+&pcie0 {
phys = <&hsio_phy 0 PHY_TYPE_PCIE 0>;
phy-names = "pcie-phy";
pinctrl-0 = <&pinctrl_pcieb>;
@@ -652,6 +652,16 @@ &pcieb {
status = "okay";
};
+&pcie0_ep{
+ phys = <&hsio_phy 0 PHY_TYPE_PCIE 0>;
+ phy-names = "pcie-phy";
+ pinctrl-0 = <&pinctrl_pcieb>;
+ pinctrl-names = "default";
+ reset-gpio = <&lsio_gpio4 0 GPIO_ACTIVE_LOW>;
+ vpcie-supply = <®_pcieb>;
+ status = "disabled";
+};
+
&sai0 {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_sai0>;
--
2.34.1
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [PATCH 4/8] arm64: dts: imx8: use common imx-pcie0-ep.dtso to enable PCI ep function
2025-03-31 19:02 [PATCH 0/8] arm64: dts: imx8: create common imx-pcie[0,1]-ep overlay file Frank Li
` (2 preceding siblings ...)
2025-03-31 19:02 ` [PATCH 3/8] arm64: dts: imx8dxl-evk: Add pcie0-ep node and use unified pcie0 label Frank Li
@ 2025-03-31 19:02 ` Frank Li
2025-03-31 19:02 ` [PATCH 5/8] arm64: dts: imx95: add pcie1 ep overlay file and create pcie-ep dtb files Frank Li
` (4 subsequent siblings)
8 siblings, 0 replies; 10+ messages in thread
From: Frank Li @ 2025-03-31 19:02 UTC (permalink / raw)
To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam
Cc: devicetree, imx, linux-arm-kernel, linux-kernel, hongxing.zhu,
Frank Li
Use common imx-pcie0-ep.dtso for imx8mp-evk-pcie-ep and
imx8qxp-mek-pcie-ep. No functional change.
Signed-off-by: Frank Li <Frank.Li@nxp.com>
---
arch/arm64/boot/dts/freescale/Makefile | 8 ++++++--
.../{imx8mp-evk-pcie-ep.dtso => imx-pcie0-ep.dtso} | 6 ++----
arch/arm64/boot/dts/freescale/imx8mp-evk.dts | 8 +++++++-
.../boot/dts/freescale/imx8qxp-mek-pcie-ep.dtso | 22 ----------------------
arch/arm64/boot/dts/freescale/imx8qxp-mek.dts | 11 ++++++++++-
5 files changed, 25 insertions(+), 30 deletions(-)
diff --git a/arch/arm64/boot/dts/freescale/Makefile b/arch/arm64/boot/dts/freescale/Makefile
index b6d3fe26d6212..8bea36060df22 100644
--- a/arch/arm64/boot/dts/freescale/Makefile
+++ b/arch/arm64/boot/dts/freescale/Makefile
@@ -104,6 +104,10 @@ dtb-$(CONFIG_ARCH_MXC) += imx8dx-colibri-eval-v3.dtb
dtb-$(CONFIG_ARCH_MXC) += imx8dx-colibri-iris-v2.dtb
dtb-$(CONFIG_ARCH_MXC) += imx8dx-colibri-iris.dtb
dtb-$(CONFIG_ARCH_MXC) += imx8dxl-evk.dtb
+
+imx8dxl-evk-pcie-ep-dtbs += imx8dxl-evk.dtb imx-pcie0-ep.dtbo
+dtb-$(CONFIG_ARCH_MXC) += imx8dxl-evk-pcie-ep.dtb
+
dtb-$(CONFIG_ARCH_MXC) += imx8dxp-tqma8xdp-mba8xx.dtb
dtb-$(CONFIG_ARCH_MXC) += imx8mm-beacon-kit.dtb
dtb-$(CONFIG_ARCH_MXC) += imx8mm-data-modul-edm-sbc.dtb
@@ -237,7 +241,7 @@ imx8mp-evk-lvds0-imx-lvds-hdmi-dtbs += imx8mp-evk.dtb imx8mp-evk-lvds0-imx-lvds-
imx8mp-evk-lvds1-imx-dlvds-hdmi-channel0-dtbs += imx8mp-evk.dtb imx8mp-evk-lvds1-imx-dlvds-hdmi-channel0.dtbo
imx8mp-evk-lvds1-imx-lvds-hdmi-dtbs += imx8mp-evk.dtb imx8mp-evk-lvds1-imx-lvds-hdmi.dtbo
imx8mp-evk-mx8-dlvds-lcd1-dtbs += imx8mp-evk.dtb imx8mp-evk-mx8-dlvds-lcd1.dtbo
-imx8mp-evk-pcie-ep-dtbs += imx8mp-evk.dtb imx8mp-evk-pcie-ep.dtbo
+imx8mp-evk-pcie-ep-dtbs += imx8mp-evk.dtb imx-pcie0-ep.dtbo
dtb-$(CONFIG_ARCH_MXC) += imx8mp-evk-lvds0-imx-dlvds-hdmi-channel0.dtb
dtb-$(CONFIG_ARCH_MXC) += imx8mp-evk-lvds0-imx-lvds-hdmi.dtb
dtb-$(CONFIG_ARCH_MXC) += imx8mp-evk-lvds1-imx-dlvds-hdmi-channel0.dtb
@@ -284,7 +288,7 @@ dtb-$(CONFIG_ARCH_MXC) += imx8qxp-colibri-iris.dtb
dtb-$(CONFIG_ARCH_MXC) += imx8qxp-colibri-iris-v2.dtb
dtb-$(CONFIG_ARCH_MXC) += imx8qxp-mek.dtb
-imx8qxp-mek-pcie-ep-dtbs += imx8qxp-mek.dtb imx8qxp-mek-pcie-ep.dtbo
+imx8qxp-mek-pcie-ep-dtbs += imx8qxp-mek.dtb imx-pcie0-ep.dtbo
dtb-$(CONFIG_ARCH_MXC) += imx8qxp-mek-pcie-ep.dtb
dtb-$(CONFIG_ARCH_MXC) += imx8qxp-tqma8xqp-mba8xx.dtb
diff --git a/arch/arm64/boot/dts/freescale/imx8mp-evk-pcie-ep.dtso b/arch/arm64/boot/dts/freescale/imx-pcie0-ep.dtso
similarity index 64%
rename from arch/arm64/boot/dts/freescale/imx8mp-evk-pcie-ep.dtso
rename to arch/arm64/boot/dts/freescale/imx-pcie0-ep.dtso
index 244e820699b50..ed73284d9bb61 100644
--- a/arch/arm64/boot/dts/freescale/imx8mp-evk-pcie-ep.dtso
+++ b/arch/arm64/boot/dts/freescale/imx-pcie0-ep.dtso
@@ -6,12 +6,10 @@
/dts-v1/;
/plugin/;
-&pcie {
+&pcie0 {
status = "disabled";
};
-&pcie_ep {
- pinctrl-0 = <&pinctrl_pcie0>;
- pinctrl-names = "default";
+&pcie0_ep {
status = "okay";
};
diff --git a/arch/arm64/boot/dts/freescale/imx8mp-evk.dts b/arch/arm64/boot/dts/freescale/imx8mp-evk.dts
index c26954e5a6056..10d3cf31e8b43 100644
--- a/arch/arm64/boot/dts/freescale/imx8mp-evk.dts
+++ b/arch/arm64/boot/dts/freescale/imx8mp-evk.dts
@@ -697,7 +697,7 @@ &pcie_phy {
status = "okay";
};
-&pcie {
+&pcie0 {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_pcie0>;
reset-gpio = <&gpio2 7 GPIO_ACTIVE_LOW>;
@@ -705,6 +705,12 @@ &pcie {
status = "okay";
};
+&pcie0_ep {
+ pinctrl-0 = <&pinctrl_pcie0>;
+ pinctrl-names = "default";
+ status = "disabled";
+};
+
&pwm1 {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_pwm1>;
diff --git a/arch/arm64/boot/dts/freescale/imx8qxp-mek-pcie-ep.dtso b/arch/arm64/boot/dts/freescale/imx8qxp-mek-pcie-ep.dtso
deleted file mode 100644
index 4f562eb5c5b1d..0000000000000
--- a/arch/arm64/boot/dts/freescale/imx8qxp-mek-pcie-ep.dtso
+++ /dev/null
@@ -1,22 +0,0 @@
-// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
-/*
- * Copyright 2025 NXP
- */
-
-#include <dt-bindings/phy/phy.h>
-
-/dts-v1/;
-/plugin/;
-
-&pcieb {
- status = "disabled";
-};
-
-&pcieb_ep {
- phys = <&hsio_phy 0 PHY_TYPE_PCIE 0>;
- phy-names = "pcie-phy";
- pinctrl-0 = <&pinctrl_pcieb>;
- pinctrl-names = "default";
- vpcie-supply = <®_pcieb>;
- status = "okay";
-};
diff --git a/arch/arm64/boot/dts/freescale/imx8qxp-mek.dts b/arch/arm64/boot/dts/freescale/imx8qxp-mek.dts
index a669a5d500d32..daba830668793 100644
--- a/arch/arm64/boot/dts/freescale/imx8qxp-mek.dts
+++ b/arch/arm64/boot/dts/freescale/imx8qxp-mek.dts
@@ -539,7 +539,7 @@ &mu1_m0 {
status = "okay";
};
-&pcieb {
+&pcie0 {
phys = <&hsio_phy 0 PHY_TYPE_PCIE 0>;
phy-names = "pcie-phy";
pinctrl-0 = <&pinctrl_pcieb>;
@@ -549,6 +549,15 @@ &pcieb {
status = "okay";
};
+&pcie0_ep {
+ phys = <&hsio_phy 0 PHY_TYPE_PCIE 0>;
+ phy-names = "pcie-phy";
+ pinctrl-0 = <&pinctrl_pcieb>;
+ pinctrl-names = "default";
+ vpcie-supply = <®_pcieb>;
+ status = "disabled";
+};
+
&scu_key {
status = "okay";
};
--
2.34.1
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [PATCH 5/8] arm64: dts: imx95: add pcie1 ep overlay file and create pcie-ep dtb files
2025-03-31 19:02 [PATCH 0/8] arm64: dts: imx8: create common imx-pcie[0,1]-ep overlay file Frank Li
` (3 preceding siblings ...)
2025-03-31 19:02 ` [PATCH 4/8] arm64: dts: imx8: use common imx-pcie0-ep.dtso to enable PCI ep function Frank Li
@ 2025-03-31 19:02 ` Frank Li
2025-03-31 19:02 ` [PATCH 6/8] arm64: dts: imx8mm-evk: add pcie0-ep node and apply pcie0-ep overlay file Frank Li
` (3 subsequent siblings)
8 siblings, 0 replies; 10+ messages in thread
From: Frank Li @ 2025-03-31 19:02 UTC (permalink / raw)
To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam
Cc: devicetree, imx, linux-arm-kernel, linux-kernel, hongxing.zhu,
Frank Li
Create imx95-15x15-evk pcie0-ep and imx95-19x19-evk pcie[0,1]-ep dtb files.
Signed-off-by: Frank Li <Frank.Li@nxp.com>
---
arch/arm64/boot/dts/freescale/Makefile | 6 ++++++
arch/arm64/boot/dts/freescale/imx-pcie1-ep.dtso | 15 +++++++++++++++
arch/arm64/boot/dts/freescale/imx95-15x15-evk.dts | 7 +++++++
arch/arm64/boot/dts/freescale/imx95-19x19-evk.dts | 14 ++++++++++++++
4 files changed, 42 insertions(+)
diff --git a/arch/arm64/boot/dts/freescale/Makefile b/arch/arm64/boot/dts/freescale/Makefile
index 8bea36060df22..7778a0b3abe37 100644
--- a/arch/arm64/boot/dts/freescale/Makefile
+++ b/arch/arm64/boot/dts/freescale/Makefile
@@ -308,6 +308,12 @@ dtb-$(CONFIG_ARCH_MXC) += imx93-var-som-symphony.dtb
dtb-$(CONFIG_ARCH_MXC) += imx95-15x15-evk.dtb
dtb-$(CONFIG_ARCH_MXC) += imx95-19x19-evk.dtb
+imx95-15x15-evk-pcie0-ep-dtbs = imx95-15x15-evk.dtb imx-pcie0-ep.dtbo
+dtb-$(CONFIG_ARCH_MXC) += imx95-15x15-evk-pcie0-ep.dtb
+imx95-19x19-evk-pcie0-ep-dtbs += imx95-19x19-evk.dtb imx-pcie0-ep.dtbo
+imx95-19x19-evk-pcie1-ep-dtbs += imx95-19x19-evk.dtb imx-pcie1-ep.dtbo
+dtb-$(CONFIG_ARCH_MXC) += imx95-19x19-evk-pcie0-ep.dtb imx95-19x19-evk-pcie1-ep.dtb
+
imx8mm-kontron-dl-dtbs := imx8mm-kontron-bl.dtb imx8mm-kontron-dl.dtbo
dtb-$(CONFIG_ARCH_MXC) += imx8mm-kontron-dl.dtb
diff --git a/arch/arm64/boot/dts/freescale/imx-pcie1-ep.dtso b/arch/arm64/boot/dts/freescale/imx-pcie1-ep.dtso
new file mode 100644
index 0000000000000..0e7ef7ef85605
--- /dev/null
+++ b/arch/arm64/boot/dts/freescale/imx-pcie1-ep.dtso
@@ -0,0 +1,15 @@
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
+/*
+ * Copyright 2025 NXP
+ */
+
+/dts-v1/;
+/plugin/;
+
+&pcie1 {
+ status = "disabled";
+};
+
+&pcie1_ep {
+ status = "okay";
+};
diff --git a/arch/arm64/boot/dts/freescale/imx95-15x15-evk.dts b/arch/arm64/boot/dts/freescale/imx95-15x15-evk.dts
index 514f2429dcbc2..a35962f929f6b 100644
--- a/arch/arm64/boot/dts/freescale/imx95-15x15-evk.dts
+++ b/arch/arm64/boot/dts/freescale/imx95-15x15-evk.dts
@@ -525,6 +525,13 @@ &pcie0 {
status = "okay";
};
+&pcie0_ep {
+ pinctrl-0 = <&pinctrl_pcie0>;
+ pinctrl-names = "default";
+ vpcie-supply = <®_m2_pwr>;
+ status = "disabled";
+};
+
&sai1 {
assigned-clocks = <&scmi_clk IMX95_CLK_AUDIOPLL1_VCO>,
<&scmi_clk IMX95_CLK_AUDIOPLL2_VCO>,
diff --git a/arch/arm64/boot/dts/freescale/imx95-19x19-evk.dts b/arch/arm64/boot/dts/freescale/imx95-19x19-evk.dts
index 25ac331f03183..4accbccc75239 100644
--- a/arch/arm64/boot/dts/freescale/imx95-19x19-evk.dts
+++ b/arch/arm64/boot/dts/freescale/imx95-19x19-evk.dts
@@ -417,6 +417,13 @@ &pcie0 {
status = "okay";
};
+&pcie0_ep {
+ pinctrl-0 = <&pinctrl_pcie0>;
+ pinctrl-names = "default";
+ vpcie-supply = <®_pcie0>;
+ status = "disabled";
+};
+
&pcie1 {
pinctrl-0 = <&pinctrl_pcie1>;
pinctrl-names = "default";
@@ -425,6 +432,13 @@ &pcie1 {
status = "okay";
};
+&pcie1_ep {
+ pinctrl-0 = <&pinctrl_pcie1>;
+ pinctrl-names = "default";
+ vpcie-supply = <®_slot_pwr>;
+ status = "disabled";
+};
+
&sai1 {
#sound-dai-cells = <0>;
pinctrl-names = "default";
--
2.34.1
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [PATCH 6/8] arm64: dts: imx8mm-evk: add pcie0-ep node and apply pcie0-ep overlay file
2025-03-31 19:02 [PATCH 0/8] arm64: dts: imx8: create common imx-pcie[0,1]-ep overlay file Frank Li
` (4 preceding siblings ...)
2025-03-31 19:02 ` [PATCH 5/8] arm64: dts: imx95: add pcie1 ep overlay file and create pcie-ep dtb files Frank Li
@ 2025-03-31 19:02 ` Frank Li
2025-03-31 19:02 ` [PATCH 7/8] arm64: dts: imx8mq: add pcie0-ep node Frank Li
` (2 subsequent siblings)
8 siblings, 0 replies; 10+ messages in thread
From: Frank Li @ 2025-03-31 19:02 UTC (permalink / raw)
To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam
Cc: devicetree, imx, linux-arm-kernel, linux-kernel, hongxing.zhu,
Frank Li
Add pcie0-ep node information and apply pcie0-ep overlay file.
Signed-off-by: Frank Li <Frank.Li@nxp.com>
---
arch/arm64/boot/dts/freescale/Makefile | 5 +++++
arch/arm64/boot/dts/freescale/imx8mm-evk.dtsi | 13 +++++++++++++
2 files changed, 18 insertions(+)
diff --git a/arch/arm64/boot/dts/freescale/Makefile b/arch/arm64/boot/dts/freescale/Makefile
index 7778a0b3abe37..4f2f50203dd86 100644
--- a/arch/arm64/boot/dts/freescale/Makefile
+++ b/arch/arm64/boot/dts/freescale/Makefile
@@ -116,6 +116,11 @@ dtb-$(CONFIG_ARCH_MXC) += imx8mm-emcon-avari.dtb
dtb-$(CONFIG_ARCH_MXC) += imx8mm-emtop-baseboard.dtb
dtb-$(CONFIG_ARCH_MXC) += imx8mm-evk.dtb
dtb-$(CONFIG_ARCH_MXC) += imx8mm-evkb.dtb
+
+imx8mm-evk-pcie-ep-dtbs += imx8mm-evk.dtb imx-pcie0-ep.dtbo
+imx8mm-evkb-pcie-ep-dtbs += imx8mm-evkb.dtb imx-pcie0-ep.dtbo
+dtb-$(CONFIG_ARCH_MXC) += imx8mm-evk-pcie-ep.dtb imx8mm-evkb-pcie-ep.dtb
+
dtb-$(CONFIG_ARCH_MXC) += imx8mm-icore-mx8mm-ctouch2.dtb
dtb-$(CONFIG_ARCH_MXC) += imx8mm-icore-mx8mm-edimm2.2.dtb
dtb-$(CONFIG_ARCH_MXC) += imx8mm-iot-gateway.dtb
diff --git a/arch/arm64/boot/dts/freescale/imx8mm-evk.dtsi b/arch/arm64/boot/dts/freescale/imx8mm-evk.dtsi
index 5f8336217bb88..622caaa78eaf1 100644
--- a/arch/arm64/boot/dts/freescale/imx8mm-evk.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx8mm-evk.dtsi
@@ -544,6 +544,19 @@ &pcie0 {
status = "okay";
};
+&pcie0_ep {
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_pcie0>;
+ clocks = <&clk IMX8MM_CLK_PCIE1_ROOT>, <&pcie0_refclk>,
+ <&clk IMX8MM_CLK_PCIE1_AUX>;
+ assigned-clocks = <&clk IMX8MM_CLK_PCIE1_AUX>,
+ <&clk IMX8MM_CLK_PCIE1_CTRL>;
+ assigned-clock-rates = <10000000>, <250000000>;
+ assigned-clock-parents = <&clk IMX8MM_SYS_PLL2_50M>,
+ <&clk IMX8MM_SYS_PLL2_250M>;
+ status = "disabled";
+};
+
&sai2 {
#sound-dai-cells = <0>;
pinctrl-names = "default";
--
2.34.1
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [PATCH 7/8] arm64: dts: imx8mq: add pcie0-ep node
2025-03-31 19:02 [PATCH 0/8] arm64: dts: imx8: create common imx-pcie[0,1]-ep overlay file Frank Li
` (5 preceding siblings ...)
2025-03-31 19:02 ` [PATCH 6/8] arm64: dts: imx8mm-evk: add pcie0-ep node and apply pcie0-ep overlay file Frank Li
@ 2025-03-31 19:02 ` Frank Li
2025-03-31 19:02 ` [PATCH 8/8] arm64: dts: imx8mq-evk: add pcie[0,1]-ep nodes Frank Li
2025-04-23 9:23 ` [PATCH 0/8] arm64: dts: imx8: create common imx-pcie[0,1]-ep overlay file Shawn Guo
8 siblings, 0 replies; 10+ messages in thread
From: Frank Li @ 2025-03-31 19:02 UTC (permalink / raw)
To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam
Cc: devicetree, imx, linux-arm-kernel, linux-kernel, hongxing.zhu,
Frank Li
Add pcie0-ep node for i.MX8QM.
Signed-off-by: Frank Li <Frank.Li@nxp.com>
---
arch/arm64/boot/dts/freescale/imx8mq.dtsi | 35 +++++++++++++++++++++++++++++++
1 file changed, 35 insertions(+)
diff --git a/arch/arm64/boot/dts/freescale/imx8mq.dtsi b/arch/arm64/boot/dts/freescale/imx8mq.dtsi
index d51de8d899b2b..e5f9c90129d6c 100644
--- a/arch/arm64/boot/dts/freescale/imx8mq.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx8mq.dtsi
@@ -1774,6 +1774,41 @@ pcie0: pcie@33800000 {
status = "disabled";
};
+ pcie0_ep: pcie-ep@33800000 {
+ compatible = "fsl,imx8mq-pcie-ep";
+ reg = <0x33800000 0x100000>,
+ <0x18000000 0x8000000>,
+ <0x33900000 0x100000>,
+ <0x33b00000 0x100000>;
+ reg-names = "dbi", "addr_space", "dbi2", "atu";
+ num-lanes = <1>;
+ interrupts = <GIC_SPI 127 IRQ_TYPE_LEVEL_HIGH>;
+ interrupt-names = "dma";
+ linux,pci-domain = <0>;
+ clocks = <&clk IMX8MQ_CLK_PCIE2_ROOT>,
+ <&clk IMX8MQ_CLK_PCIE2_PHY>,
+ <&clk IMX8MQ_CLK_PCIE2_PHY>,
+ <&clk IMX8MQ_CLK_PCIE2_AUX>;
+ clock-names = "pcie", "pcie_bus", "pcie_phy", "pcie_aux";
+ power-domains = <&pgc_pcie>;
+ resets = <&src IMX8MQ_RESET_PCIEPHY2>,
+ <&src IMX8MQ_RESET_PCIE2_CTRL_APPS_EN>,
+ <&src IMX8MQ_RESET_PCIE2_CTRL_APPS_TURNOFF>;
+ reset-names = "pciephy", "apps", "turnoff";
+ assigned-clocks = <&clk IMX8MQ_CLK_PCIE2_CTRL>,
+ <&clk IMX8MQ_CLK_PCIE2_PHY>,
+ <&clk IMX8MQ_CLK_PCIE2_AUX>;
+ assigned-clock-parents = <&clk IMX8MQ_SYS2_PLL_250M>,
+ <&clk IMX8MQ_SYS2_PLL_100M>,
+ <&clk IMX8MQ_SYS1_PLL_80M>;
+ assigned-clock-rates = <250000000>, <100000000>,
+ <10000000>;
+ num-ib-windows = <4>;
+ num-ob-windows = <4>;
+ fsl,max-link-speed = <2>;
+ status = "disabled";
+ };
+
pcie1: pcie@33c00000 {
compatible = "fsl,imx8mq-pcie";
reg = <0x33c00000 0x400000>,
--
2.34.1
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [PATCH 8/8] arm64: dts: imx8mq-evk: add pcie[0,1]-ep nodes
2025-03-31 19:02 [PATCH 0/8] arm64: dts: imx8: create common imx-pcie[0,1]-ep overlay file Frank Li
` (6 preceding siblings ...)
2025-03-31 19:02 ` [PATCH 7/8] arm64: dts: imx8mq: add pcie0-ep node Frank Li
@ 2025-03-31 19:02 ` Frank Li
2025-04-23 9:23 ` [PATCH 0/8] arm64: dts: imx8: create common imx-pcie[0,1]-ep overlay file Shawn Guo
8 siblings, 0 replies; 10+ messages in thread
From: Frank Li @ 2025-03-31 19:02 UTC (permalink / raw)
To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam
Cc: devicetree, imx, linux-arm-kernel, linux-kernel, hongxing.zhu,
Frank Li
Add pcie[0,1]-ep nodes and apply imx-pcie1-ep overlay file.
Signed-off-by: Frank Li <Frank.Li@nxp.com>
---
arch/arm64/boot/dts/freescale/Makefile | 3 +++
arch/arm64/boot/dts/freescale/imx8mq-evk.dts | 20 ++++++++++++++++++++
2 files changed, 23 insertions(+)
diff --git a/arch/arm64/boot/dts/freescale/Makefile b/arch/arm64/boot/dts/freescale/Makefile
index 4f2f50203dd86..205552b4e4985 100644
--- a/arch/arm64/boot/dts/freescale/Makefile
+++ b/arch/arm64/boot/dts/freescale/Makefile
@@ -260,6 +260,9 @@ dtb-$(CONFIG_ARCH_MXC) += imx8mp-tqma8mpql-mba8mpxl-lvds.dtb
dtb-$(CONFIG_ARCH_MXC) += imx8mp-tqma8mpql-mba8mpxl-lvds-g133han01.dtb
dtb-$(CONFIG_ARCH_MXC) += imx8mq-evk.dtb
+imx8mq-evk-pcie1-ep-dtbs += imx8mq-evk.dtb imx-pcie1-ep.dtbo
+dtb-$(CONFIG_ARCH_MXC) += imx8mq-evk-pcie1-ep.dtb
+
dtb-$(CONFIG_ARCH_MXC) += imx8mq-hummingboard-pulse.dtb
dtb-$(CONFIG_ARCH_MXC) += imx8mq-kontron-pitx-imx8m.dtb
dtb-$(CONFIG_ARCH_MXC) += imx8mq-librem5-devkit.dtb
diff --git a/arch/arm64/boot/dts/freescale/imx8mq-evk.dts b/arch/arm64/boot/dts/freescale/imx8mq-evk.dts
index a87d0692c3bb3..43e45b0bd0d17 100644
--- a/arch/arm64/boot/dts/freescale/imx8mq-evk.dts
+++ b/arch/arm64/boot/dts/freescale/imx8mq-evk.dts
@@ -377,6 +377,16 @@ &pcie0 {
status = "okay";
};
+&pcie0_ep {
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_pcie0>;
+ clocks = <&clk IMX8MQ_CLK_PCIE1_ROOT>,
+ <&pcie0_refclk>,
+ <&clk IMX8MQ_CLK_PCIE1_PHY>,
+ <&clk IMX8MQ_CLK_PCIE1_AUX>;
+ status = "disabled";
+};
+
&pcie1 {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_pcie1>;
@@ -390,6 +400,16 @@ &pcie1 {
status = "okay";
};
+&pcie1_ep {
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_pcie1>;
+ clocks = <&clk IMX8MQ_CLK_PCIE2_ROOT>,
+ <&pcie0_refclk>,
+ <&clk IMX8MQ_CLK_PCIE2_PHY>,
+ <&clk IMX8MQ_CLK_PCIE2_AUX>;
+ status = "disabled";
+};
+
&pgc_gpu {
power-supply = <&sw1a_reg>;
};
--
2.34.1
^ permalink raw reply related [flat|nested] 10+ messages in thread
* Re: [PATCH 0/8] arm64: dts: imx8: create common imx-pcie[0,1]-ep overlay file
2025-03-31 19:02 [PATCH 0/8] arm64: dts: imx8: create common imx-pcie[0,1]-ep overlay file Frank Li
` (7 preceding siblings ...)
2025-03-31 19:02 ` [PATCH 8/8] arm64: dts: imx8mq-evk: add pcie[0,1]-ep nodes Frank Li
@ 2025-04-23 9:23 ` Shawn Guo
8 siblings, 0 replies; 10+ messages in thread
From: Shawn Guo @ 2025-04-23 9:23 UTC (permalink / raw)
To: Frank Li
Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam, devicetree,
imx, linux-arm-kernel, linux-kernel, hongxing.zhu
On Mon, Mar 31, 2025 at 03:02:38PM -0400, Frank Li wrote:
> Frank Li (8):
> arm64: dts: imx8: create unified pcie0 and pcie0_ep label for all chips
> arm64: dts: imx8dxl-ss-hsio: correct irq number for imx8dxl
> arm64: dts: imx8dxl-evk: Add pcie0-ep node and use unified pcie0 label
> arm64: dts: imx8: use common imx-pcie0-ep.dtso to enable PCI ep function
> arm64: dts: imx95: add pcie1 ep overlay file and create pcie-ep dtb files
Applying: arm64: dts: imx95: add pcie1 ep overlay file and create pcie-ep dtb files
error: sha1 information is lacking or useless (arch/arm64/boot/dts/freescale/Makefile).
error: could not build fake ancestor
Patch failed at 0005 arm64: dts: imx95: add pcie1 ep overlay file and create pcie-ep dtb files
Could you rebase?
Shawn
> arm64: dts: imx8mm-evk: add pcie0-ep node and apply pcie0-ep overlay file
> arm64: dts: imx8mq: add pcie0-ep node
> arm64: dts: imx8mq-evk: add pcie[0,1]-ep nodes
^ permalink raw reply [flat|nested] 10+ messages in thread
end of thread, other threads:[~2025-04-23 9:23 UTC | newest]
Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-03-31 19:02 [PATCH 0/8] arm64: dts: imx8: create common imx-pcie[0,1]-ep overlay file Frank Li
2025-03-31 19:02 ` [PATCH 1/8] arm64: dts: imx8: create unified pcie0 and pcie0_ep label for all chips Frank Li
2025-03-31 19:02 ` [PATCH 2/8] arm64: dts: imx8dxl-ss-hsio: correct irq number for imx8dxl Frank Li
2025-03-31 19:02 ` [PATCH 3/8] arm64: dts: imx8dxl-evk: Add pcie0-ep node and use unified pcie0 label Frank Li
2025-03-31 19:02 ` [PATCH 4/8] arm64: dts: imx8: use common imx-pcie0-ep.dtso to enable PCI ep function Frank Li
2025-03-31 19:02 ` [PATCH 5/8] arm64: dts: imx95: add pcie1 ep overlay file and create pcie-ep dtb files Frank Li
2025-03-31 19:02 ` [PATCH 6/8] arm64: dts: imx8mm-evk: add pcie0-ep node and apply pcie0-ep overlay file Frank Li
2025-03-31 19:02 ` [PATCH 7/8] arm64: dts: imx8mq: add pcie0-ep node Frank Li
2025-03-31 19:02 ` [PATCH 8/8] arm64: dts: imx8mq-evk: add pcie[0,1]-ep nodes Frank Li
2025-04-23 9:23 ` [PATCH 0/8] arm64: dts: imx8: create common imx-pcie[0,1]-ep overlay file Shawn Guo
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.