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