On Fri, Jan 06, 2017 at 06:22:48PM +0530, Kishon Vijay Abraham I wrote: > Group all the PCI drivers that use designware core in dwc directory. > dwc IP is capable of operating in both host mode and device mode and > keeping it inside the *host* directory is misleading. > > Cc: Thomas Petazzoni <thomas.petazzoni@xxxxxxxxxxxxxxxxxx> > Cc: Minghuan Lian <minghuan.Lian@xxxxxxxxxxxxx> > Cc: Mingkai Hu <mingkai.hu@xxxxxxxxxxxxx> > Cc: Roy Zang <tie-fei.zang@xxxxxxxxxxxxx> > Cc: Richard Zhu <hongxing.zhu@xxxxxxx> > Cc: Lucas Stach <l.stach@xxxxxxxxxxxxxx> > Cc: Murali Karicheri <m-karicheri2@xxxxxx> > Cc: Jingoo Han <jingoohan1@xxxxxxxxx> > Cc: Joao Pinto <Joao.Pinto@xxxxxxxxxxxx> > Cc: Pratyush Anand <pratyush.anand@xxxxxxxxx> > Cc: Niklas Cassel <niklas.cassel@xxxxxxxx> > Cc: Jesper Nilsson <jesper.nilsson@xxxxxxxx> > Cc: Zhou Wang <wangzhou1@xxxxxxxxxxxxx> > Cc: Gabriele Paoloni <gabriele.paoloni@xxxxxxxxxx> > Cc: Stanimir Varbanov <svarbanov@xxxxxxxxxx> > Acked-by: Jingoo Han <jingoohan1@xxxxxxxxx> > Acked-By: Joao Pinto <jpinto@xxxxxxxxxxxx> > Signed-off-by: Kishon Vijay Abraham I <kishon@xxxxxx> I applied this to pci/host-designware. I might have to do some fiddling when merging everything together, but I intend to include this for v4.11. Thanks for your patience, Kishon! > --- > Changes from v4: > *) modified Kconfig such that the user doesn't have to explicity > select PCIE_DW. > > Changes from v3: > *) Moved pci-keystone.h to dwc directory which was missed earlier > > Changes from v2: > *) update MAINTAINERS file > > Changes from v1: > *) instead of renaming *host* directory to *controller* directory, > move all the dwc drivers to dwc/ directory. > Next Steps: > Split pcie-designware.c to core, host-only and endpoint-only files. > > MAINTAINERS | 22 ++-- > drivers/pci/Kconfig | 1 + > drivers/pci/Makefile | 3 + > drivers/pci/dwc/Kconfig | 117 ++++++++++++++++++++++ > drivers/pci/dwc/Makefile | 23 +++++ > drivers/pci/{host => dwc}/pci-dra7xx.c | 0 > drivers/pci/{host => dwc}/pci-exynos.c | 0 > drivers/pci/{host => dwc}/pci-imx6.c | 0 > drivers/pci/{host => dwc}/pci-keystone-dw.c | 0 > drivers/pci/{host => dwc}/pci-keystone.c | 0 > drivers/pci/{host => dwc}/pci-keystone.h | 0 > drivers/pci/{host => dwc}/pci-layerscape.c | 0 > drivers/pci/{host => dwc}/pcie-armada8k.c | 0 > drivers/pci/{host => dwc}/pcie-artpec6.c | 0 > drivers/pci/{host => dwc}/pcie-designware-plat.c | 0 > drivers/pci/{host => dwc}/pcie-designware.c | 0 > drivers/pci/{host => dwc}/pcie-designware.h | 0 > drivers/pci/{host => dwc}/pcie-hisi.c | 0 > drivers/pci/{host => dwc}/pcie-qcom.c | 0 > drivers/pci/{host => dwc}/pcie-spear13xx.c | 0 > drivers/pci/host/Kconfig | 113 --------------------- > drivers/pci/host/Makefile | 12 --- > 22 files changed, 155 insertions(+), 136 deletions(-) > create mode 100644 drivers/pci/dwc/Kconfig > create mode 100644 drivers/pci/dwc/Makefile > rename drivers/pci/{host => dwc}/pci-dra7xx.c (100%) > rename drivers/pci/{host => dwc}/pci-exynos.c (100%) > rename drivers/pci/{host => dwc}/pci-imx6.c (100%) > rename drivers/pci/{host => dwc}/pci-keystone-dw.c (100%) > rename drivers/pci/{host => dwc}/pci-keystone.c (100%) > rename drivers/pci/{host => dwc}/pci-keystone.h (100%) > rename drivers/pci/{host => dwc}/pci-layerscape.c (100%) > rename drivers/pci/{host => dwc}/pcie-armada8k.c (100%) > rename drivers/pci/{host => dwc}/pcie-artpec6.c (100%) > rename drivers/pci/{host => dwc}/pcie-designware-plat.c (100%) > rename drivers/pci/{host => dwc}/pcie-designware.c (100%) > rename drivers/pci/{host => dwc}/pcie-designware.h (100%) > rename drivers/pci/{host => dwc}/pcie-hisi.c (100%) > rename drivers/pci/{host => dwc}/pcie-qcom.c (100%) > rename drivers/pci/{host => dwc}/pcie-spear13xx.c (100%) > > diff --git a/MAINTAINERS b/MAINTAINERS > index cfff2c9..8672f18 100644 > --- a/MAINTAINERS > +++ b/MAINTAINERS > @@ -9429,7 +9429,7 @@ L: linux-pci@xxxxxxxxxxxxxxx > L: linux-arm-kernel@xxxxxxxxxxxxxxxxxxx > S: Maintained > F: Documentation/devicetree/bindings/pci/pci-armada8k.txt > -F: drivers/pci/host/pcie-armada8k.c > +F: drivers/pci/dwc/pcie-armada8k.c > > PCI DRIVER FOR APPLIEDMICRO XGENE > M: Tanmay Inamdar <tinamdar@xxxxxxx> > @@ -9447,7 +9447,7 @@ L: linuxppc-dev@xxxxxxxxxxxxxxxx > L: linux-pci@xxxxxxxxxxxxxxx > L: linux-arm-kernel@xxxxxxxxxxxxxxxxxxx > S: Maintained > -F: drivers/pci/host/*layerscape* > +F: drivers/pci/dwc/*layerscape* > > PCI DRIVER FOR IMX6 > M: Richard Zhu <hongxing.zhu@xxxxxxx> > @@ -9456,14 +9456,14 @@ L: linux-pci@xxxxxxxxxxxxxxx > L: linux-arm-kernel@xxxxxxxxxxxxxxxxxxx (moderated for non-subscribers) > S: Maintained > F: Documentation/devicetree/bindings/pci/fsl,imx6q-pcie.txt > -F: drivers/pci/host/*imx6* > +F: drivers/pci/dwc/*imx6* > > PCI DRIVER FOR TI KEYSTONE > M: Murali Karicheri <m-karicheri2@xxxxxx> > L: linux-pci@xxxxxxxxxxxxxxx > L: linux-arm-kernel@xxxxxxxxxxxxxxxxxxx (moderated for non-subscribers) > S: Maintained > -F: drivers/pci/host/*keystone* > +F: drivers/pci/dwc/*keystone* > > PCI DRIVER FOR MVEBU (Marvell Armada 370 and Armada XP SOC support) > M: Thomas Petazzoni <thomas.petazzoni@xxxxxxxxxxxxxxxxxx> > @@ -9495,7 +9495,7 @@ L: linux-omap@xxxxxxxxxxxxxxx > L: linux-pci@xxxxxxxxxxxxxxx > S: Supported > F: Documentation/devicetree/bindings/pci/ti-pci.txt > -F: drivers/pci/host/pci-dra7xx.c > +F: drivers/pci/dwc/pci-dra7xx.c > > PCI DRIVER FOR RENESAS R-CAR > M: Simon Horman <horms@xxxxxxxxxxxx> > @@ -9510,7 +9510,7 @@ L: linux-pci@xxxxxxxxxxxxxxx > L: linux-arm-kernel@xxxxxxxxxxxxxxxxxxx (moderated for non-subscribers) > L: linux-samsung-soc@xxxxxxxxxxxxxxx (moderated for non-subscribers) > S: Maintained > -F: drivers/pci/host/pci-exynos.c > +F: drivers/pci/dwc/pci-exynos.c > > PCI DRIVER FOR SYNOPSIS DESIGNWARE > M: Jingoo Han <jingoohan1@xxxxxxxxx> > @@ -9518,7 +9518,7 @@ M: Joao Pinto <Joao.Pinto@xxxxxxxxxxxx> > L: linux-pci@xxxxxxxxxxxxxxx > S: Maintained > F: Documentation/devicetree/bindings/pci/designware-pcie.txt > -F: drivers/pci/host/*designware* > +F: drivers/pci/dwc/*designware* > > PCI DRIVER FOR GENERIC OF HOSTS > M: Will Deacon <will.deacon@xxxxxxx> > @@ -9539,7 +9539,7 @@ PCIE DRIVER FOR ST SPEAR13XX > M: Pratyush Anand <pratyush.anand@xxxxxxxxx> > L: linux-pci@xxxxxxxxxxxxxxx > S: Maintained > -F: drivers/pci/host/*spear* > +F: drivers/pci/dwc/*spear* > > PCI MSI DRIVER FOR ALTERA MSI IP > M: Ley Foon Tan <lftan@xxxxxxxxxx> > @@ -9564,7 +9564,7 @@ L: linux-arm-kernel@xxxxxxxx > L: linux-pci@xxxxxxxxxxxxxxx > S: Maintained > F: Documentation/devicetree/bindings/pci/axis,artpec* > -F: drivers/pci/host/*artpec* > +F: drivers/pci/dwc/*artpec* > > PCIE DRIVER FOR HISILICON > M: Zhou Wang <wangzhou1@xxxxxxxxxxxxx> > @@ -9572,7 +9572,7 @@ M: Gabriele Paoloni <gabriele.paoloni@xxxxxxxxxx> > L: linux-pci@xxxxxxxxxxxxxxx > S: Maintained > F: Documentation/devicetree/bindings/pci/hisilicon-pcie.txt > -F: drivers/pci/host/pcie-hisi.c > +F: drivers/pci/dwc/pcie-hisi.c > > PCIE DRIVER FOR ROCKCHIP > M: Shawn Lin <shawn.lin@xxxxxxxxxxxxxx> > @@ -9588,7 +9588,7 @@ M: Stanimir Varbanov <svarbanov@xxxxxxxxxx> > L: linux-pci@xxxxxxxxxxxxxxx > L: linux-arm-msm@xxxxxxxxxxxxxxx > S: Maintained > -F: drivers/pci/host/*qcom* > +F: drivers/pci/dwc/*qcom* > > PCIE DRIVER FOR CAVIUM THUNDERX > M: David Daney <david.daney@xxxxxxxxxx> > diff --git a/drivers/pci/Kconfig b/drivers/pci/Kconfig > index 6555eb7..df14142 100644 > --- a/drivers/pci/Kconfig > +++ b/drivers/pci/Kconfig > @@ -132,4 +132,5 @@ config PCI_HYPERV > PCI devices from a PCI backend to support PCI driver domains. > > source "drivers/pci/hotplug/Kconfig" > +source "drivers/pci/dwc/Kconfig" > source "drivers/pci/host/Kconfig" > diff --git a/drivers/pci/Makefile b/drivers/pci/Makefile > index 8db5079..b7e9751 100644 > --- a/drivers/pci/Makefile > +++ b/drivers/pci/Makefile > @@ -66,5 +66,8 @@ obj-$(CONFIG_OF) += of.o > > ccflags-$(CONFIG_PCI_DEBUG) := -DDEBUG > > +# PCI dwc controller drivers > +obj-y += dwc/ > + > # PCI host controller drivers > obj-y += host/ > diff --git a/drivers/pci/dwc/Kconfig b/drivers/pci/dwc/Kconfig > new file mode 100644 > index 0000000..deae261 > --- /dev/null > +++ b/drivers/pci/dwc/Kconfig > @@ -0,0 +1,117 @@ > +menu "DesignWare PCI Core Support" > + depends on PCI > + > +config PCIE_DW > + bool > + depends on PCI_MSI_IRQ_DOMAIN > + > +config PCI_DRA7XX > + bool "TI DRA7xx PCIe controller" > + depends on OF && HAS_IOMEM && TI_PIPE3 > + depends on PCI_MSI_IRQ_DOMAIN > + select PCIE_DW > + help > + Enables support for the PCIe controller in the DRA7xx SoC. There > + are two instances of PCIe controller in DRA7xx. This controller can > + act both as EP and RC. This reuses the Designware core. > + > +config PCIE_DW_PLAT > + bool "Platform bus based DesignWare PCIe Controller" > + depends on PCI_MSI_IRQ_DOMAIN > + select PCIE_DW > + ---help--- > + This selects the DesignWare PCIe controller support. Select this if > + you have a PCIe controller on Platform bus. > + > + If you have a controller with this interface, say Y or M here. > + > + If unsure, say N. > + > +config PCI_EXYNOS > + bool "Samsung Exynos PCIe controller" > + depends on SOC_EXYNOS5440 > + depends on PCI_MSI_IRQ_DOMAIN > + select PCIEPORTBUS > + select PCIE_DW > + > +config PCI_IMX6 > + bool "Freescale i.MX6 PCIe controller" > + depends on SOC_IMX6Q > + depends on PCI_MSI_IRQ_DOMAIN > + select PCIEPORTBUS > + select PCIE_DW > + > +config PCIE_SPEAR13XX > + bool "STMicroelectronics SPEAr PCIe controller" > + depends on ARCH_SPEAR13XX > + depends on PCI_MSI_IRQ_DOMAIN > + select PCIEPORTBUS > + select PCIE_DW > + help > + Say Y here if you want PCIe support on SPEAr13XX SoCs. > + > +config PCI_KEYSTONE > + bool "TI Keystone PCIe controller" > + depends on ARCH_KEYSTONE > + depends on PCI_MSI_IRQ_DOMAIN > + select PCIEPORTBUS > + select PCIE_DW > + help > + Say Y here if you want to enable PCI controller support on Keystone > + SoCs. The PCI controller on Keystone is based on Designware hardware > + and therefore the driver re-uses the Designware core functions to > + implement the driver. > + > +config PCI_LAYERSCAPE > + bool "Freescale Layerscape PCIe controller" > + depends on OF && (ARM || ARCH_LAYERSCAPE) > + depends on PCI_MSI_IRQ_DOMAIN > + select MFD_SYSCON > + select PCIE_DW > + help > + Say Y here if you want PCIe controller support on Layerscape SoCs. > + > +config PCI_HISI > + depends on OF && ARM64 > + bool "HiSilicon Hip05 and Hip06 SoCs PCIe controllers" > + depends on PCI_MSI_IRQ_DOMAIN > + select PCIEPORTBUS > + select PCIE_DW > + help > + Say Y here if you want PCIe controller support on HiSilicon > + Hip05 and Hip06 SoCs > + > +config PCIE_QCOM > + bool "Qualcomm PCIe controller" > + depends on ARCH_QCOM && OF > + depends on PCI_MSI_IRQ_DOMAIN > + select PCIEPORTBUS > + select PCIE_DW > + help > + Say Y here to enable PCIe controller support on Qualcomm SoCs. The > + PCIe controller uses the Designware core plus Qualcomm-specific > + hardware wrappers. > + > +config PCIE_ARMADA_8K > + bool "Marvell Armada-8K PCIe controller" > + depends on ARCH_MVEBU > + depends on PCI_MSI_IRQ_DOMAIN > + select PCIEPORTBUS > + select PCIE_DW > + help > + Say Y here if you want to enable PCIe controller support on > + Armada-8K SoCs. The PCIe controller on Armada-8K is based on > + Designware hardware and therefore the driver re-uses the > + Designware core functions to implement the driver. > + > +config PCIE_ARTPEC6 > + bool "Axis ARTPEC-6 PCIe controller" > + depends on MACH_ARTPEC6 > + depends on PCI_MSI_IRQ_DOMAIN > + select PCIEPORTBUS > + select PCIE_DW > + help > + Say Y here to enable PCIe controller support on Axis ARTPEC-6 > + SoCs. This PCIe controller uses the DesignWare core. > + > +endmenu > diff --git a/drivers/pci/dwc/Makefile b/drivers/pci/dwc/Makefile > new file mode 100644 > index 0000000..7d27c14 > --- /dev/null > +++ b/drivers/pci/dwc/Makefile > @@ -0,0 +1,23 @@ > +obj-$(CONFIG_PCIE_DW) += pcie-designware.o > +obj-$(CONFIG_PCIE_DW_PLAT) += pcie-designware-plat.o > +obj-$(CONFIG_PCI_DRA7XX) += pci-dra7xx.o > +obj-$(CONFIG_PCI_EXYNOS) += pci-exynos.o > +obj-$(CONFIG_PCI_IMX6) += pci-imx6.o > +obj-$(CONFIG_PCIE_SPEAR13XX) += pcie-spear13xx.o > +obj-$(CONFIG_PCI_KEYSTONE) += pci-keystone-dw.o pci-keystone.o > +obj-$(CONFIG_PCI_LAYERSCAPE) += pci-layerscape.o > +obj-$(CONFIG_PCIE_QCOM) += pcie-qcom.o > +obj-$(CONFIG_PCIE_ARMADA_8K) += pcie-armada8k.o > +obj-$(CONFIG_PCIE_ARTPEC6) += pcie-artpec6.o > + > +# The following drivers are for devices that use the generic ACPI > +# pci_root.c driver but don't support standard ECAM config access. > +# They contain MCFG quirks to replace the generic ECAM accessors with > +# device-specific ones that are shared with the DT driver. > + > +# The ACPI driver is generic and should not require driver-specific > +# config options to be enabled, so we always build these drivers on > +# ARM64 and use internal ifdefs to only build the pieces we need > +# depending on whether ACPI, the DT driver, or both are enabled. > + > +obj-$(CONFIG_ARM64) += pcie-hisi.o > diff --git a/drivers/pci/host/pci-dra7xx.c b/drivers/pci/dwc/pci-dra7xx.c > similarity index 100% > rename from drivers/pci/host/pci-dra7xx.c > rename to drivers/pci/dwc/pci-dra7xx.c > diff --git a/drivers/pci/host/pci-exynos.c b/drivers/pci/dwc/pci-exynos.c > similarity index 100% > rename from drivers/pci/host/pci-exynos.c > rename to drivers/pci/dwc/pci-exynos.c > diff --git a/drivers/pci/host/pci-imx6.c b/drivers/pci/dwc/pci-imx6.c > similarity index 100% > rename from drivers/pci/host/pci-imx6.c > rename to drivers/pci/dwc/pci-imx6.c > diff --git a/drivers/pci/host/pci-keystone-dw.c b/drivers/pci/dwc/pci-keystone-dw.c > similarity index 100% > rename from drivers/pci/host/pci-keystone-dw.c > rename to drivers/pci/dwc/pci-keystone-dw.c > diff --git a/drivers/pci/host/pci-keystone.c b/drivers/pci/dwc/pci-keystone.c > similarity index 100% > rename from drivers/pci/host/pci-keystone.c > rename to drivers/pci/dwc/pci-keystone.c > diff --git a/drivers/pci/host/pci-keystone.h b/drivers/pci/dwc/pci-keystone.h > similarity index 100% > rename from drivers/pci/host/pci-keystone.h > rename to drivers/pci/dwc/pci-keystone.h > diff --git a/drivers/pci/host/pci-layerscape.c b/drivers/pci/dwc/pci-layerscape.c > similarity index 100% > rename from drivers/pci/host/pci-layerscape.c > rename to drivers/pci/dwc/pci-layerscape.c > diff --git a/drivers/pci/host/pcie-armada8k.c b/drivers/pci/dwc/pcie-armada8k.c > similarity index 100% > rename from drivers/pci/host/pcie-armada8k.c > rename to drivers/pci/dwc/pcie-armada8k.c > diff --git a/drivers/pci/host/pcie-artpec6.c b/drivers/pci/dwc/pcie-artpec6.c > similarity index 100% > rename from drivers/pci/host/pcie-artpec6.c > rename to drivers/pci/dwc/pcie-artpec6.c > diff --git a/drivers/pci/host/pcie-designware-plat.c b/drivers/pci/dwc/pcie-designware-plat.c > similarity index 100% > rename from drivers/pci/host/pcie-designware-plat.c > rename to drivers/pci/dwc/pcie-designware-plat.c > diff --git a/drivers/pci/host/pcie-designware.c b/drivers/pci/dwc/pcie-designware.c > similarity index 100% > rename from drivers/pci/host/pcie-designware.c > rename to drivers/pci/dwc/pcie-designware.c > diff --git a/drivers/pci/host/pcie-designware.h b/drivers/pci/dwc/pcie-designware.h > similarity index 100% > rename from drivers/pci/host/pcie-designware.h > rename to drivers/pci/dwc/pcie-designware.h > diff --git a/drivers/pci/host/pcie-hisi.c b/drivers/pci/dwc/pcie-hisi.c > similarity index 100% > rename from drivers/pci/host/pcie-hisi.c > rename to drivers/pci/dwc/pcie-hisi.c > diff --git a/drivers/pci/host/pcie-qcom.c b/drivers/pci/dwc/pcie-qcom.c > similarity index 100% > rename from drivers/pci/host/pcie-qcom.c > rename to drivers/pci/dwc/pcie-qcom.c > diff --git a/drivers/pci/host/pcie-spear13xx.c b/drivers/pci/dwc/pcie-spear13xx.c > similarity index 100% > rename from drivers/pci/host/pcie-spear13xx.c > rename to drivers/pci/dwc/pcie-spear13xx.c > diff --git a/drivers/pci/host/Kconfig b/drivers/pci/host/Kconfig > index 898d2c4..f7c1d4d 100644 > --- a/drivers/pci/host/Kconfig > +++ b/drivers/pci/host/Kconfig > @@ -1,16 +1,6 @@ > menu "PCI host controller drivers" > depends on PCI > > -config PCI_DRA7XX > - bool "TI DRA7xx PCIe controller" > - depends on OF && HAS_IOMEM && TI_PIPE3 > - depends on PCI_MSI_IRQ_DOMAIN > - select PCIE_DW > - help > - Enables support for the PCIe controller in the DRA7xx SoC. There > - are two instances of PCIe controller in DRA7xx. This controller can > - act both as EP and RC. This reuses the Designware core. > - > config PCI_MVEBU > bool "Marvell EBU PCIe controller" > depends on ARCH_MVEBU || ARCH_DOVE > @@ -37,36 +27,6 @@ config PCIE_XILINX_NWL > or End Point. The current option selection will only > support root port enabling. > > -config PCIE_DW_PLAT > - bool "Platform bus based DesignWare PCIe Controller" > - depends on PCI_MSI_IRQ_DOMAIN > - select PCIE_DW > - ---help--- > - This selects the DesignWare PCIe controller support. Select this if > - you have a PCIe controller on Platform bus. > - > - If you have a controller with this interface, say Y or M here. > - > - If unsure, say N. > - > -config PCIE_DW > - bool > - depends on PCI_MSI_IRQ_DOMAIN > - > -config PCI_EXYNOS > - bool "Samsung Exynos PCIe controller" > - depends on SOC_EXYNOS5440 > - depends on PCI_MSI_IRQ_DOMAIN > - select PCIEPORTBUS > - select PCIE_DW > - > -config PCI_IMX6 > - bool "Freescale i.MX6 PCIe controller" > - depends on SOC_IMX6Q > - depends on PCI_MSI_IRQ_DOMAIN > - select PCIEPORTBUS > - select PCIE_DW > - > config PCI_TEGRA > bool "NVIDIA Tegra PCIe controller" > depends on ARCH_TEGRA > @@ -103,27 +63,6 @@ config PCI_HOST_GENERIC > Say Y here if you want to support a simple generic PCI host > controller, such as the one emulated by kvmtool. > > -config PCIE_SPEAR13XX > - bool "STMicroelectronics SPEAr PCIe controller" > - depends on ARCH_SPEAR13XX > - depends on PCI_MSI_IRQ_DOMAIN > - select PCIEPORTBUS > - select PCIE_DW > - help > - Say Y here if you want PCIe support on SPEAr13XX SoCs. > - > -config PCI_KEYSTONE > - bool "TI Keystone PCIe controller" > - depends on ARCH_KEYSTONE > - depends on PCI_MSI_IRQ_DOMAIN > - select PCIE_DW > - select PCIEPORTBUS > - help > - Say Y here if you want to enable PCI controller support on Keystone > - SoCs. The PCI controller on Keystone is based on Designware hardware > - and therefore the driver re-uses the Designware core functions to > - implement the driver. > - > config PCIE_XILINX > bool "Xilinx AXI PCIe host bridge support" > depends on ARCH_ZYNQ || MICROBLAZE > @@ -150,15 +89,6 @@ config PCI_XGENE_MSI > Say Y here if you want PCIe MSI support for the APM X-Gene v1 SoC. > This MSI driver supports 5 PCIe ports on the APM X-Gene v1 SoC. > > -config PCI_LAYERSCAPE > - bool "Freescale Layerscape PCIe controller" > - depends on OF && (ARM || ARCH_LAYERSCAPE) > - depends on PCI_MSI_IRQ_DOMAIN > - select PCIE_DW > - select MFD_SYSCON > - help > - Say Y here if you want PCIe controller support on Layerscape SoCs. > - > config PCI_VERSATILE > bool "ARM Versatile PB PCI controller" > depends on ARCH_VERSATILE > @@ -217,27 +147,6 @@ config PCIE_ALTERA_MSI > Say Y here if you want PCIe MSI support for the Altera FPGA. > This MSI driver supports Altera MSI to GIC controller IP. > > -config PCI_HISI > - depends on OF && ARM64 > - bool "HiSilicon Hip05 and Hip06 SoCs PCIe controllers" > - depends on PCI_MSI_IRQ_DOMAIN > - select PCIEPORTBUS > - select PCIE_DW > - help > - Say Y here if you want PCIe controller support on HiSilicon > - Hip05 and Hip06 SoCs > - > -config PCIE_QCOM > - bool "Qualcomm PCIe controller" > - depends on ARCH_QCOM && OF > - depends on PCI_MSI_IRQ_DOMAIN > - select PCIE_DW > - select PCIEPORTBUS > - help > - Say Y here to enable PCIe controller support on Qualcomm SoCs. The > - PCIe controller uses the Designware core plus Qualcomm-specific > - hardware wrappers. > - > config PCI_HOST_THUNDER_PEM > bool "Cavium Thunder PCIe controller to off-chip devices" > depends on ARM64 > @@ -254,28 +163,6 @@ config PCI_HOST_THUNDER_ECAM > help > Say Y here if you want ECAM support for CN88XX-Pass-1.x Cavium Thunder SoCs. > > -config PCIE_ARMADA_8K > - bool "Marvell Armada-8K PCIe controller" > - depends on ARCH_MVEBU > - depends on PCI_MSI_IRQ_DOMAIN > - select PCIE_DW > - select PCIEPORTBUS > - help > - Say Y here if you want to enable PCIe controller support on > - Armada-8K SoCs. The PCIe controller on Armada-8K is based on > - Designware hardware and therefore the driver re-uses the > - Designware core functions to implement the driver. > - > -config PCIE_ARTPEC6 > - bool "Axis ARTPEC-6 PCIe controller" > - depends on MACH_ARTPEC6 > - depends on PCI_MSI_IRQ_DOMAIN > - select PCIE_DW > - select PCIEPORTBUS > - help > - Say Y here to enable PCIe controller support on Axis ARTPEC-6 > - SoCs. This PCIe controller uses the DesignWare core. > - > config PCIE_ROCKCHIP > bool "Rockchip PCIe controller" > depends on ARCH_ROCKCHIP || COMPILE_TEST > diff --git a/drivers/pci/host/Makefile b/drivers/pci/host/Makefile > index bfe3179..4d36866 100644 > --- a/drivers/pci/host/Makefile > +++ b/drivers/pci/host/Makefile > @@ -1,8 +1,3 @@ > -obj-$(CONFIG_PCIE_DW) += pcie-designware.o > -obj-$(CONFIG_PCIE_DW_PLAT) += pcie-designware-plat.o > -obj-$(CONFIG_PCI_DRA7XX) += pci-dra7xx.o > -obj-$(CONFIG_PCI_EXYNOS) += pci-exynos.o > -obj-$(CONFIG_PCI_IMX6) += pci-imx6.o > obj-$(CONFIG_PCI_HYPERV) += pci-hyperv.o > obj-$(CONFIG_PCI_MVEBU) += pci-mvebu.o > obj-$(CONFIG_PCI_AARDVARK) += pci-aardvark.o > @@ -11,12 +6,9 @@ obj-$(CONFIG_PCI_RCAR_GEN2) += pci-rcar-gen2.o > obj-$(CONFIG_PCIE_RCAR) += pcie-rcar.o > obj-$(CONFIG_PCI_HOST_COMMON) += pci-host-common.o > obj-$(CONFIG_PCI_HOST_GENERIC) += pci-host-generic.o > -obj-$(CONFIG_PCIE_SPEAR13XX) += pcie-spear13xx.o > -obj-$(CONFIG_PCI_KEYSTONE) += pci-keystone-dw.o pci-keystone.o > obj-$(CONFIG_PCIE_XILINX) += pcie-xilinx.o > obj-$(CONFIG_PCIE_XILINX_NWL) += pcie-xilinx-nwl.o > obj-$(CONFIG_PCI_XGENE_MSI) += pci-xgene-msi.o > -obj-$(CONFIG_PCI_LAYERSCAPE) += pci-layerscape.o > obj-$(CONFIG_PCI_VERSATILE) += pci-versatile.o > obj-$(CONFIG_PCIE_IPROC) += pcie-iproc.o > obj-$(CONFIG_PCIE_IPROC_MSI) += pcie-iproc-msi.o > @@ -24,9 +16,6 @@ obj-$(CONFIG_PCIE_IPROC_PLATFORM) += pcie-iproc-platform.o > obj-$(CONFIG_PCIE_IPROC_BCMA) += pcie-iproc-bcma.o > obj-$(CONFIG_PCIE_ALTERA) += pcie-altera.o > obj-$(CONFIG_PCIE_ALTERA_MSI) += pcie-altera-msi.o > -obj-$(CONFIG_PCIE_QCOM) += pcie-qcom.o > -obj-$(CONFIG_PCIE_ARMADA_8K) += pcie-armada8k.o > -obj-$(CONFIG_PCIE_ARTPEC6) += pcie-artpec6.o > obj-$(CONFIG_PCIE_ROCKCHIP) += pcie-rockchip.o > obj-$(CONFIG_VMD) += vmd.o > > @@ -40,7 +29,6 @@ obj-$(CONFIG_VMD) += vmd.o > # ARM64 and use internal ifdefs to only build the pieces we need > # depending on whether ACPI, the DT driver, or both are enabled. > > -obj-$(CONFIG_ARM64) += pcie-hisi.o > obj-$(CONFIG_ARM64) += pci-thunder-ecam.o > obj-$(CONFIG_ARM64) += pci-thunder-pem.o > obj-$(CONFIG_ARM64) += pci-xgene.o > -- > 1.7.9.5 >