1# SPDX-License-Identifier: GPL-2.0
2obj-$(CONFIG_PCIE_DW) += pcie-designware.o
3obj-$(CONFIG_PCIE_DW_HOST) += pcie-designware-host.o
4obj-$(CONFIG_PCIE_DW_EP) += pcie-designware-ep.o
5obj-$(CONFIG_PCIE_DW_PLAT) += pcie-designware-plat.o
6obj-$(CONFIG_PCI_DRA7XX) += pci-dra7xx.o
7obj-$(CONFIG_PCI_EXYNOS) += pci-exynos.o
8obj-$(CONFIG_PCIE_FU740) += pcie-fu740.o
9obj-$(CONFIG_PCI_IMX6) += pci-imx6.o
10obj-$(CONFIG_PCIE_SPEAR13XX) += pcie-spear13xx.o
11obj-$(CONFIG_PCI_KEYSTONE) += pci-keystone.o
12obj-$(CONFIG_PCI_LAYERSCAPE) += pci-layerscape.o
13obj-$(CONFIG_PCI_LAYERSCAPE_EP) += pci-layerscape-ep.o
14obj-$(CONFIG_PCIE_QCOM) += pcie-qcom.o
15obj-$(CONFIG_PCIE_ARMADA_8K) += pcie-armada8k.o
16obj-$(CONFIG_PCIE_ARTPEC6) += pcie-artpec6.o
17obj-$(CONFIG_PCIE_INTEL_GW) += pcie-intel-gw.o
18obj-$(CONFIG_PCIE_KIRIN) += pcie-kirin.o
19obj-$(CONFIG_PCIE_HISI_STB) += pcie-histb.o
20obj-$(CONFIG_PCI_MESON) += pci-meson.o
21obj-$(CONFIG_PCIE_UNIPHIER) += pcie-uniphier.o
22obj-$(CONFIG_PCIE_UNIPHIER_EP) += pcie-uniphier-ep.o
23
24# The following drivers are for devices that use the generic ACPI
25# pci_root.c driver but don't support standard ECAM config access.
26# They contain MCFG quirks to replace the generic ECAM accessors with
27# device-specific ones that are shared with the DT driver.
28
29# The ACPI driver is generic and should not require driver-specific
30# config options to be enabled, so we always build these drivers on
31# ARM64 and use internal ifdefs to only build the pieces we need
32# depending on whether ACPI, the DT driver, or both are enabled.
33
34obj-$(CONFIG_PCIE_AL) += pcie-al.o
35obj-$(CONFIG_PCI_HISI) += pcie-hisi.o
36
37ifdef CONFIG_ACPI
38ifdef CONFIG_PCI_QUIRKS
39obj-$(CONFIG_ARM64) += pcie-al.o
40obj-$(CONFIG_ARM64) += pcie-hisi.o
41obj-$(CONFIG_ARM64) += pcie-tegra194.o
42endif
43endif
44