PCIE_DW_AMD currently only targets ARCH_VERSAL2. Versal Premium Gen 2's
PCIe root complex is built around the same DesignWare/MDB core, so
extend the Kconfig dependency to ARCH_VERSAL and update the help text
to reflect that.

Add "amd,versal2-cpm6-host" to pcie_dw_amd.c's compatible list
alongside "amd,versal2-mdb-host" so the driver binds to Versal Premium
Gen 2's PCIe devicetree node.

versal_mem_map[] in arch/arm/mach-versal/cpu.c already maps the
0x600000000 region unconditionally as normal memory, covering the
controller's DBI/ECAM window, so no mem-map changes are needed here.

Signed-off-by: Pranav Sanwal <[email protected]>
---
 drivers/pci/Kconfig       | 4 ++--
 drivers/pci/pcie_dw_amd.c | 1 +
 2 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/drivers/pci/Kconfig b/drivers/pci/Kconfig
index 2b2ccdf4745..0a6af36e361 100644
--- a/drivers/pci/Kconfig
+++ b/drivers/pci/Kconfig
@@ -459,14 +459,14 @@ config PCIE_STARFIVE_JH7110
 
 config PCIE_DW_AMD
        bool "AMD Versal2 DW PCIe host controller"
-       depends on ARCH_VERSAL2
+       depends on ARCH_VERSAL2 || ARCH_VERSAL
        depends on DM_GPIO
        select PCIE_DW_COMMON
        select SYS_PCI_64BIT
        help
          Say Y here to enable support for the AMD Versal Gen 2 PCIe
          host controller. This is a DesignWare-based PCIe controller
-         used in AMD Versal Gen 2 SoCs.
+         used in AMD Versal Gen 2 and premium gen 2 SoCs.
 
 config PCIE_DW_IMX
        bool "i.MX DW PCIe controller support"
diff --git a/drivers/pci/pcie_dw_amd.c b/drivers/pci/pcie_dw_amd.c
index 81c6d8f2817..dbc51afa9b4 100644
--- a/drivers/pci/pcie_dw_amd.c
+++ b/drivers/pci/pcie_dw_amd.c
@@ -236,6 +236,7 @@ static const struct dm_pci_ops amd_dw_pcie_ops = {
 
 static const struct udevice_id amd_dw_pcie_ids[] = {
        { .compatible = "amd,versal2-mdb-host" },
+       { .compatible = "amd,versal2-cpm6-host" },
        { }
 };
 
-- 
2.43.7

Reply via email to