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_ROCKCHIP_DW_HOST) += pcie-dw-rockchip.o
18obj-$(CONFIG_PCIE_INTEL_GW) += pcie-intel-gw.o
19obj-$(CONFIG_PCIE_KIRIN) += pcie-kirin.o
20obj-$(CONFIG_PCIE_HISI_STB) += pcie-histb.o
21obj-$(CONFIG_PCI_MESON) += pci-meson.o
22obj-$(CONFIG_PCIE_TEGRA194) += pcie-tegra194.o
23obj-$(CONFIG_PCIE_UNIPHIER) += pcie-uniphier.o
24obj-$(CONFIG_PCIE_UNIPHIER_EP) += pcie-uniphier-ep.o
25
26# The following drivers are for devices that use the generic ACPI
27# pci_root.c driver but don't support standard ECAM config access.
28# They contain MCFG quirks to replace the generic ECAM accessors with
29# device-specific ones that are shared with the DT driver.
30
31# The ACPI driver is generic and should not require driver-specific
32# config options to be enabled, so we always build these drivers on
33# ARM64 and use internal ifdefs to only build the pieces we need
34# depending on whether ACPI, the DT driver, or both are enabled.
35
36obj-$(CONFIG_PCIE_AL) += pcie-al.o
37obj-$(CONFIG_PCI_HISI) += pcie-hisi.o
38
39ifdef CONFIG_ACPI
40ifdef CONFIG_PCI_QUIRKS
41obj-$(CONFIG_ARM64) += pcie-al.o
42obj-$(CONFIG_ARM64) += pcie-hisi.o
43obj-$(CONFIG_ARM64) += pcie-tegra194-acpi.o
44endif
45endif
46