1# SPDX-License-Identifier: GPL-2.0 2obj-$(CONFIG_PCIE_DW) += pcie-designware.o 3obj-$(CONFIG_PCIE_DW_DEBUGFS) += pcie-designware-debugfs.o 4obj-$(CONFIG_PCIE_DW_HOST) += pcie-designware-host.o 5obj-$(CONFIG_PCIE_DW_EP) += pcie-designware-ep.o 6obj-$(CONFIG_PCIE_DW_PLAT) += pcie-designware-plat.o 7obj-$(CONFIG_PCIE_AMD_MDB) += pcie-amd-mdb.o 8obj-$(CONFIG_PCIE_BT1) += pcie-bt1.o 9obj-$(CONFIG_PCI_DRA7XX) += pci-dra7xx.o 10obj-$(CONFIG_PCI_EXYNOS) += pci-exynos.o 11obj-$(CONFIG_PCIE_FU740) += pcie-fu740.o 12obj-$(CONFIG_PCI_IMX6) += pci-imx6.o 13obj-$(CONFIG_PCIE_NXP_S32G) += pcie-nxp-s32g.o 14obj-$(CONFIG_PCIE_SPEAR13XX) += pcie-spear13xx.o 15# ARM32 platforms use hook_fault_code() and cannot support loadable module. 16obj-$(CONFIG_PCI_KEYSTONE) += pci-keystone.o 17# On non-ARM32 platforms, loadable module can be supported. 18obj-$(CONFIG_PCI_KEYSTONE_TRISTATE) += pci-keystone.o 19obj-$(CONFIG_PCI_LAYERSCAPE) += pci-layerscape.o 20obj-$(CONFIG_PCI_LAYERSCAPE_EP) += pci-layerscape-ep.o 21obj-$(CONFIG_PCIE_QCOM_COMMON) += pcie-qcom-common.o 22obj-$(CONFIG_PCIE_QCOM) += pcie-qcom.o 23obj-$(CONFIG_PCIE_QCOM_EP) += pcie-qcom-ep.o 24obj-$(CONFIG_PCIE_ARMADA_8K) += pcie-armada8k.o 25obj-$(CONFIG_PCIE_ARTPEC6) += pcie-artpec6.o 26obj-$(CONFIG_PCIE_ROCKCHIP_DW) += pcie-dw-rockchip.o 27obj-$(CONFIG_PCIE_SOPHGO_DW) += pcie-sophgo.o 28obj-$(CONFIG_PCIE_INTEL_GW) += pcie-intel-gw.o 29obj-$(CONFIG_PCIE_KEEMBAY) += pcie-keembay.o 30obj-$(CONFIG_PCIE_KIRIN) += pcie-kirin.o 31obj-$(CONFIG_PCIE_HISI_STB) += pcie-histb.o 32obj-$(CONFIG_PCI_MESON) += pci-meson.o 33obj-$(CONFIG_PCIE_TEGRA194) += pcie-tegra194.o 34obj-$(CONFIG_PCIE_UNIPHIER) += pcie-uniphier.o 35obj-$(CONFIG_PCIE_UNIPHIER_EP) += pcie-uniphier-ep.o 36obj-$(CONFIG_PCIE_VISCONTI_HOST) += pcie-visconti.o 37obj-$(CONFIG_PCIE_RCAR_GEN4) += pcie-rcar-gen4.o 38obj-$(CONFIG_PCIE_SPACEMIT_K1) += pcie-spacemit-k1.o 39obj-$(CONFIG_PCIE_STM32_HOST) += pcie-stm32.o 40obj-$(CONFIG_PCIE_STM32_EP) += pcie-stm32-ep.o 41 42# The following drivers are for devices that use the generic ACPI 43# pci_root.c driver but don't support standard ECAM config access. 44# They contain MCFG quirks to replace the generic ECAM accessors with 45# device-specific ones that are shared with the DT driver. 46 47# The ACPI driver is generic and should not require driver-specific 48# config options to be enabled, so we always build these drivers on 49# ARM64 and use internal ifdefs to only build the pieces we need 50# depending on whether ACPI, the DT driver, or both are enabled. 51 52obj-$(CONFIG_PCIE_AL) += pcie-al.o 53obj-$(CONFIG_PCI_HISI) += pcie-hisi.o 54 55ifdef CONFIG_ACPI 56ifdef CONFIG_PCI_QUIRKS 57obj-$(CONFIG_ARM64) += pcie-al.o 58obj-$(CONFIG_ARM64) += pcie-hisi.o 59obj-$(CONFIG_ARM64) += pcie-tegra194-acpi.o 60endif 61endif 62