xref: /linux/drivers/pci/controller/Kconfig (revision 9a35a26485b3d8677f8cc44103f554b0ce8d62d0)
16e0832faSShawn Lin# SPDX-License-Identifier: GPL-2.0
26e0832faSShawn Lin
36e0832faSShawn Linmenu "PCI controller drivers"
46e0832faSShawn Lin	depends on PCI
56e0832faSShawn Lin
6d1c696dbSManivannan Sadhasivamconfig PCI_HOST_COMMON
7d1c696dbSManivannan Sadhasivam	tristate
8d1c696dbSManivannan Sadhasivam	select PCI_ECAM
9d1c696dbSManivannan Sadhasivam
106e0832faSShawn Linconfig PCI_AARDVARK
11526a7699SPali Rohár	tristate "Aardvark PCIe controller"
126e0832faSShawn Lin	depends on (ARCH_MVEBU && ARM64) || COMPILE_TEST
136e0832faSShawn Lin	depends on OF
14a474d3fbSThomas Gleixner	depends on PCI_MSI
158a3ebd8dSZachary Zhang	select PCI_BRIDGE_EMUL
1675027704SNam Cao	select IRQ_MSI_LIB
176e0832faSShawn Lin	help
186e0832faSShawn Lin	 Add support for Aardvark 64bit PCIe Host Controller. This
196e0832faSShawn Lin	 controller is part of the South Bridge of the Marvel Armada
206e0832faSShawn Lin	 3700 SoC.
216e0832faSShawn Lin
2281c362e7SBjorn Helgaasconfig PCIE_ALTERA
2381c362e7SBjorn Helgaas	tristate "Altera PCIe controller"
2481c362e7SBjorn Helgaas	depends on ARM || NIOS2 || ARM64 || COMPILE_TEST
2581c362e7SBjorn Helgaas	help
2681c362e7SBjorn Helgaas	  Say Y here if you want to enable PCIe controller support on Altera
2781c362e7SBjorn Helgaas	  FPGA.
2881c362e7SBjorn Helgaas
2981c362e7SBjorn Helgaasconfig PCIE_ALTERA_MSI
3081c362e7SBjorn Helgaas	tristate "Altera PCIe MSI feature"
3181c362e7SBjorn Helgaas	depends on PCIE_ALTERA
32a474d3fbSThomas Gleixner	depends on PCI_MSI
33cf154cccSNam Cao	select IRQ_MSI_LIB
346e0832faSShawn Lin	help
3581c362e7SBjorn Helgaas	  Say Y here if you want PCIe MSI support for the Altera FPGA.
3681c362e7SBjorn Helgaas	  This MSI driver supports Altera MSI to GIC controller IP.
376e0832faSShawn Lin
3881c362e7SBjorn Helgaasconfig PCIE_APPLE_MSI_DOORBELL_ADDR
3981c362e7SBjorn Helgaas	hex
4081c362e7SBjorn Helgaas	default 0xfffff000
4181c362e7SBjorn Helgaas	depends on PCIE_APPLE
4281c362e7SBjorn Helgaas
4381c362e7SBjorn Helgaasconfig PCIE_APPLE
4481c362e7SBjorn Helgaas	tristate "Apple PCIe controller"
4581c362e7SBjorn Helgaas	depends on ARCH_APPLE || COMPILE_TEST
466e0832faSShawn Lin	depends on OF
47a474d3fbSThomas Gleixner	depends on PCI_MSI
48508f6106SBharat Kumar Gogada	select PCI_HOST_COMMON
495d627a94SMarc Zyngier	select IRQ_MSI_LIB
50508f6106SBharat Kumar Gogada	help
5181c362e7SBjorn Helgaas	  Say Y here if you want to enable PCIe controller support on Apple
5281c362e7SBjorn Helgaas	  system-on-chips, like the Apple M1. This is required for the USB
5381c362e7SBjorn Helgaas	  type-A ports, Ethernet, Wi-Fi, and Bluetooth.
54508f6106SBharat Kumar Gogada
5581c362e7SBjorn Helgaas	  If unsure, say Y if you have an Apple Silicon system.
566e0832faSShawn Lin
576e0832faSShawn Linconfig PCI_VERSATILE
586e0832faSShawn Lin	bool "ARM Versatile PB PCI controller"
59ecf8fd6dSRob Herring	depends on ARCH_VERSATILE || COMPILE_TEST
606e0832faSShawn Lin
6181c362e7SBjorn Helgaasconfig PCIE_BRCMSTB
6281c362e7SBjorn Helgaas	tristate "Broadcom Brcmstb PCIe controller"
6381c362e7SBjorn Helgaas	depends on ARCH_BRCMSTB || ARCH_BCM2835 || ARCH_BCMBCA || \
6481c362e7SBjorn Helgaas		   BMIPS_GENERIC || COMPILE_TEST
6581c362e7SBjorn Helgaas	depends on OF
6681c362e7SBjorn Helgaas	depends on PCI_MSI
67ebcc2fbdSNam Cao	select IRQ_MSI_LIB
6881c362e7SBjorn Helgaas	default ARCH_BRCMSTB || BMIPS_GENERIC
6981c362e7SBjorn Helgaas	help
7081c362e7SBjorn Helgaas	  Say Y here to enable PCIe host controller support for
7181c362e7SBjorn Helgaas	  Broadcom STB based SoCs, like the Raspberry Pi 4.
7281c362e7SBjorn Helgaas
736e0832faSShawn Linconfig PCIE_IPROC
746e0832faSShawn Lin	tristate
756e0832faSShawn Lin	help
766e0832faSShawn Lin	  This enables the iProc PCIe core controller support for Broadcom's
776e0832faSShawn Lin	  iProc family of SoCs. An appropriate bus interface driver needs
786e0832faSShawn Lin	  to be enabled to select this.
796e0832faSShawn Lin
806e0832faSShawn Linconfig PCIE_IPROC_PLATFORM
816e0832faSShawn Lin	tristate "Broadcom iProc PCIe platform bus driver"
826e0832faSShawn Lin	depends on ARCH_BCM_IPROC || (ARM && COMPILE_TEST)
836e0832faSShawn Lin	depends on OF
846e0832faSShawn Lin	select PCIE_IPROC
856e0832faSShawn Lin	default ARCH_BCM_IPROC
866e0832faSShawn Lin	help
876e0832faSShawn Lin	  Say Y here if you want to use the Broadcom iProc PCIe controller
886e0832faSShawn Lin	  through the generic platform bus interface
896e0832faSShawn Lin
906e0832faSShawn Linconfig PCIE_IPROC_BCMA
9180c170d7SBjorn Helgaas	tristate "Broadcom iProc BCMA PCIe controller"
926e0832faSShawn Lin	depends on ARM && (ARCH_BCM_IPROC || COMPILE_TEST)
936e0832faSShawn Lin	select PCIE_IPROC
946e0832faSShawn Lin	select BCMA
956e0832faSShawn Lin	default ARCH_BCM_5301X
966e0832faSShawn Lin	help
976e0832faSShawn Lin	  Say Y here if you want to use the Broadcom iProc PCIe controller
986e0832faSShawn Lin	  through the BCMA bus interface
996e0832faSShawn Lin
1006e0832faSShawn Linconfig PCIE_IPROC_MSI
1016e0832faSShawn Lin	bool "Broadcom iProc PCIe MSI support"
1026e0832faSShawn Lin	depends on PCIE_IPROC_PLATFORM || PCIE_IPROC_BCMA
103a474d3fbSThomas Gleixner	depends on PCI_MSI
104e275e38aSNam Cao	select IRQ_MSI_LIB
1056e0832faSShawn Lin	default ARCH_BCM_IPROC
1066e0832faSShawn Lin	help
1076e0832faSShawn Lin	  Say Y here if you want to enable MSI support for Broadcom's iProc
1086e0832faSShawn Lin	  PCIe controller
1096e0832faSShawn Lin
1106e0832faSShawn Linconfig PCI_HOST_THUNDER_PEM
1116e0832faSShawn Lin	bool "Cavium Thunder PCIe controller to off-chip devices"
1126e0832faSShawn Lin	depends on ARM64 || COMPILE_TEST
1136e0832faSShawn Lin	depends on OF || (ACPI && PCI_QUIRKS)
1146e0832faSShawn Lin	select PCI_HOST_COMMON
1156e0832faSShawn Lin	help
1166e0832faSShawn Lin	  Say Y here if you want PCIe support for CN88XX Cavium Thunder SoCs.
1176e0832faSShawn Lin
1186e0832faSShawn Linconfig PCI_HOST_THUNDER_ECAM
1196e0832faSShawn Lin	bool "Cavium Thunder ECAM controller to on-chip devices on pass-1.x silicon"
1206e0832faSShawn Lin	depends on ARM64 || COMPILE_TEST
1216e0832faSShawn Lin	depends on OF || (ACPI && PCI_QUIRKS)
1226e0832faSShawn Lin	select PCI_HOST_COMMON
1236e0832faSShawn Lin	help
1246e0832faSShawn Lin	  Say Y here if you want ECAM support for CN88XX-Pass-1.x Cavium Thunder SoCs.
1256e0832faSShawn Lin
12681c362e7SBjorn Helgaasconfig PCI_FTPCI100
12781c362e7SBjorn Helgaas	bool "Faraday Technology FTPCI100 PCI controller"
12881c362e7SBjorn Helgaas	depends on OF
12981c362e7SBjorn Helgaas	default ARCH_GEMINI
13081c362e7SBjorn Helgaas
13181c362e7SBjorn Helgaasconfig PCI_HOST_GENERIC
13281c362e7SBjorn Helgaas	tristate "Generic PCI host controller"
13381c362e7SBjorn Helgaas	depends on OF
13481c362e7SBjorn Helgaas	select PCI_HOST_COMMON
13581c362e7SBjorn Helgaas	select IRQ_DOMAIN
13681c362e7SBjorn Helgaas	help
13781c362e7SBjorn Helgaas	  Say Y here if you want to support a simple generic PCI host
13881c362e7SBjorn Helgaas	  controller, such as the one emulated by kvmtool.
13981c362e7SBjorn Helgaas
14081c362e7SBjorn Helgaasconfig PCIE_HISI_ERR
14181c362e7SBjorn Helgaas	depends on ACPI_APEI_GHES && (ARM64 || COMPILE_TEST)
14281c362e7SBjorn Helgaas	bool "HiSilicon HIP PCIe controller error handling driver"
14381c362e7SBjorn Helgaas	help
14481c362e7SBjorn Helgaas	  Say Y here if you want error handling support
14581c362e7SBjorn Helgaas	  for the PCIe controller's errors on HiSilicon HIP SoCs
14681c362e7SBjorn Helgaas
14781c362e7SBjorn Helgaasconfig PCI_IXP4XX
14881c362e7SBjorn Helgaas	bool "Intel IXP4xx PCI controller"
14981c362e7SBjorn Helgaas	depends on ARM && OF
15081c362e7SBjorn Helgaas	depends on ARCH_IXP4XX || COMPILE_TEST
15181c362e7SBjorn Helgaas	default ARCH_IXP4XX
15281c362e7SBjorn Helgaas	help
15381c362e7SBjorn Helgaas	  Say Y here if you want support for the PCI host controller found
15481c362e7SBjorn Helgaas	  in the Intel IXP4xx XScale-based network processor SoC.
15581c362e7SBjorn Helgaas
15681c362e7SBjorn Helgaasconfig VMD
15781c362e7SBjorn Helgaas	depends on PCI_MSI && X86_64 && !UML
15881c362e7SBjorn Helgaas	tristate "Intel Volume Management Device Driver"
15981c362e7SBjorn Helgaas	help
16081c362e7SBjorn Helgaas	  Adds support for the Intel Volume Management Device (VMD). VMD is a
16181c362e7SBjorn Helgaas	  secondary PCI host bridge that allows PCI Express root ports,
16281c362e7SBjorn Helgaas	  and devices attached to them, to be removed from the default
16381c362e7SBjorn Helgaas	  PCI domain and placed within the VMD domain. This provides
16481c362e7SBjorn Helgaas	  more bus resources than are otherwise possible with a
16581c362e7SBjorn Helgaas	  single domain. If you know your system provides one of these and
16681c362e7SBjorn Helgaas	  has devices attached to it, say Y; if you are not sure, say N.
16781c362e7SBjorn Helgaas
16881c362e7SBjorn Helgaas	  To compile this driver as a module, choose M here: the
16981c362e7SBjorn Helgaas	  module will be called vmd.
17081c362e7SBjorn Helgaas
17181c362e7SBjorn Helgaasconfig PCI_LOONGSON
17281c362e7SBjorn Helgaas	bool "LOONGSON PCIe controller"
17381c362e7SBjorn Helgaas	depends on MACH_LOONGSON64 || COMPILE_TEST
17481c362e7SBjorn Helgaas	depends on OF || ACPI
17581c362e7SBjorn Helgaas	depends on PCI_QUIRKS
17681c362e7SBjorn Helgaas	default MACH_LOONGSON64
17781c362e7SBjorn Helgaas	help
17881c362e7SBjorn Helgaas	  Say Y here if you want to enable PCI controller support on
17981c362e7SBjorn Helgaas	  Loongson systems.
18081c362e7SBjorn Helgaas
18181c362e7SBjorn Helgaasconfig PCI_MVEBU
18281c362e7SBjorn Helgaas	tristate "Marvell EBU PCIe controller"
18381c362e7SBjorn Helgaas	depends on ARCH_MVEBU || ARCH_DOVE || COMPILE_TEST
18481c362e7SBjorn Helgaas	depends on MVEBU_MBUS
18581c362e7SBjorn Helgaas	depends on ARM
18681c362e7SBjorn Helgaas	depends on OF
18781c362e7SBjorn Helgaas	select PCI_BRIDGE_EMUL
18881c362e7SBjorn Helgaas	help
18981c362e7SBjorn Helgaas	 Add support for Marvell EBU PCIe controller. This PCIe controller
19081c362e7SBjorn Helgaas	 is used on 32-bit Marvell ARM SoCs: Dove, Kirkwood, Armada 370,
19181c362e7SBjorn Helgaas	 Armada XP, Armada 375, Armada 38x and Armada 39x.
19281c362e7SBjorn Helgaas
19381c362e7SBjorn Helgaasconfig PCIE_MEDIATEK
19481c362e7SBjorn Helgaas	tristate "MediaTek PCIe controller"
19581c362e7SBjorn Helgaas	depends on ARCH_AIROHA || ARCH_MEDIATEK || COMPILE_TEST
19681c362e7SBjorn Helgaas	depends on OF
19781c362e7SBjorn Helgaas	depends on PCI_MSI
19881c362e7SBjorn Helgaas	help
19981c362e7SBjorn Helgaas	  Say Y here if you want to enable PCIe controller support on
20081c362e7SBjorn Helgaas	  MediaTek SoCs.
20181c362e7SBjorn Helgaas
20281c362e7SBjorn Helgaasconfig PCIE_MEDIATEK_GEN3
20381c362e7SBjorn Helgaas	tristate "MediaTek Gen3 PCIe controller"
204f6ab8983SLorenzo Bianconi	depends on ARCH_AIROHA || ARCH_MEDIATEK || COMPILE_TEST
20581c362e7SBjorn Helgaas	depends on PCI_MSI
206*9a35a264SNam Cao	select IRQ_MSI_LIB
20781c362e7SBjorn Helgaas	help
20881c362e7SBjorn Helgaas	  Adds support for PCIe Gen3 MAC controller for MediaTek SoCs.
20981c362e7SBjorn Helgaas	  This PCIe controller is compatible with Gen3, Gen2 and Gen1 speed,
21081c362e7SBjorn Helgaas	  and support up to 256 MSI interrupt numbers for
21181c362e7SBjorn Helgaas	  multi-function devices.
21281c362e7SBjorn Helgaas
21381c362e7SBjorn Helgaas	  Say Y here if you want to enable Gen3 PCIe controller support on
21481c362e7SBjorn Helgaas	  MediaTek SoCs.
21581c362e7SBjorn Helgaas
21681c362e7SBjorn Helgaasconfig PCIE_MT7621
21781c362e7SBjorn Helgaas	tristate "MediaTek MT7621 PCIe controller"
21881c362e7SBjorn Helgaas	depends on SOC_MT7621 || COMPILE_TEST
21981c362e7SBjorn Helgaas	select PHY_MT7621_PCI
22081c362e7SBjorn Helgaas	default SOC_MT7621
22181c362e7SBjorn Helgaas	help
22281c362e7SBjorn Helgaas	  This selects a driver for the MediaTek MT7621 PCIe Controller.
22381c362e7SBjorn Helgaas
22481c362e7SBjorn Helgaasconfig PCI_HYPERV_INTERFACE
22581c362e7SBjorn Helgaas	tristate "Microsoft Hyper-V PCI Interface"
22681c362e7SBjorn Helgaas	depends on ((X86 && X86_64) || ARM64) && HYPERV && PCI_MSI
22781c362e7SBjorn Helgaas	help
22881c362e7SBjorn Helgaas	  The Hyper-V PCI Interface is a helper driver that allows other
22981c362e7SBjorn Helgaas	  drivers to have a common interface with the Hyper-V PCI frontend
23081c362e7SBjorn Helgaas	  driver.
23181c362e7SBjorn Helgaas
23281c362e7SBjorn Helgaasconfig PCI_TEGRA
23381c362e7SBjorn Helgaas	bool "NVIDIA Tegra PCIe controller"
23481c362e7SBjorn Helgaas	depends on ARCH_TEGRA || COMPILE_TEST
23581c362e7SBjorn Helgaas	depends on PCI_MSI
23694424278SMarc Zyngier	select IRQ_MSI_LIB
23781c362e7SBjorn Helgaas	help
23881c362e7SBjorn Helgaas	  Say Y here if you want support for the PCIe host controller found
23981c362e7SBjorn Helgaas	  on NVIDIA Tegra SoCs.
24081c362e7SBjorn Helgaas
24181c362e7SBjorn Helgaasconfig PCIE_RCAR_HOST
24281c362e7SBjorn Helgaas	bool "Renesas R-Car PCIe controller (host mode)"
24381c362e7SBjorn Helgaas	depends on ARCH_RENESAS || COMPILE_TEST
24481c362e7SBjorn Helgaas	depends on PCI_MSI
24581c362e7SBjorn Helgaas	help
24681c362e7SBjorn Helgaas	  Say Y here if you want PCIe controller support on R-Car SoCs in host
24781c362e7SBjorn Helgaas	  mode.
24881c362e7SBjorn Helgaas
24981c362e7SBjorn Helgaasconfig PCIE_RCAR_EP
25081c362e7SBjorn Helgaas	bool "Renesas R-Car PCIe controller (endpoint mode)"
25181c362e7SBjorn Helgaas	depends on ARCH_RENESAS || COMPILE_TEST
25281c362e7SBjorn Helgaas	depends on PCI_ENDPOINT
25381c362e7SBjorn Helgaas	help
25481c362e7SBjorn Helgaas	  Say Y here if you want PCIe controller support on R-Car SoCs in
25581c362e7SBjorn Helgaas	  endpoint mode.
25681c362e7SBjorn Helgaas
25781c362e7SBjorn Helgaasconfig PCI_RCAR_GEN2
25881c362e7SBjorn Helgaas	bool "Renesas R-Car Gen2 Internal PCI controller"
25981c362e7SBjorn Helgaas	depends on ARCH_RENESAS || COMPILE_TEST
26081c362e7SBjorn Helgaas	depends on ARM
26181c362e7SBjorn Helgaas	help
26281c362e7SBjorn Helgaas	  Say Y here if you want internal PCI support on R-Car Gen2 SoC.
26381c362e7SBjorn Helgaas	  There are 3 internal PCI controllers available with a single
26481c362e7SBjorn Helgaas	  built-in EHCI/OHCI host controller present on each one.
26581c362e7SBjorn Helgaas
2666e0832faSShawn Linconfig PCIE_ROCKCHIP
2676e0832faSShawn Lin	bool
2686e0832faSShawn Lin	depends on PCI
2696e0832faSShawn Lin
2706e0832faSShawn Linconfig PCIE_ROCKCHIP_HOST
27180c170d7SBjorn Helgaas	tristate "Rockchip PCIe controller (host mode)"
2726e0832faSShawn Lin	depends on ARCH_ROCKCHIP || COMPILE_TEST
2736e0832faSShawn Lin	depends on OF
274a474d3fbSThomas Gleixner	depends on PCI_MSI
2756e0832faSShawn Lin	select MFD_SYSCON
2766e0832faSShawn Lin	select PCIE_ROCKCHIP
2776e0832faSShawn Lin	help
2786e0832faSShawn Lin	  Say Y here if you want internal PCI support on Rockchip SoC.
2796e0832faSShawn Lin	  There is 1 internal PCIe port available to support GEN2 with
2806e0832faSShawn Lin	  4 slots.
2816e0832faSShawn Lin
2826e0832faSShawn Linconfig PCIE_ROCKCHIP_EP
28380c170d7SBjorn Helgaas	bool "Rockchip PCIe controller (endpoint mode)"
2846e0832faSShawn Lin	depends on ARCH_ROCKCHIP || COMPILE_TEST
2856e0832faSShawn Lin	depends on OF
2866e0832faSShawn Lin	depends on PCI_ENDPOINT
2876e0832faSShawn Lin	select MFD_SYSCON
2886e0832faSShawn Lin	select PCIE_ROCKCHIP
2896e0832faSShawn Lin	help
2906e0832faSShawn Lin	  Say Y here if you want to support Rockchip PCIe controller in
2916e0832faSShawn Lin	  endpoint mode on Rockchip SoC. There is 1 internal PCIe port
2926e0832faSShawn Lin	  available to support GEN2 with 4 slots.
2936e0832faSShawn Lin
29481c362e7SBjorn Helgaasconfig PCI_V3_SEMI
29581c362e7SBjorn Helgaas	bool "V3 Semiconductor PCI controller"
2966e0832faSShawn Lin	depends on OF
29781c362e7SBjorn Helgaas	depends on ARM || COMPILE_TEST
29881c362e7SBjorn Helgaas	default ARCH_INTEGRATOR_AP
29981c362e7SBjorn Helgaas
30081c362e7SBjorn Helgaasconfig PCI_XGENE
30181c362e7SBjorn Helgaas	bool "X-Gene PCIe controller"
30281c362e7SBjorn Helgaas	depends on ARM64 || COMPILE_TEST
30381c362e7SBjorn Helgaas	depends on OF || (ACPI && PCI_QUIRKS)
30481c362e7SBjorn Helgaas	help
30581c362e7SBjorn Helgaas	  Say Y here if you want internal PCI support on APM X-Gene SoC.
30681c362e7SBjorn Helgaas	  There are 5 internal PCIe ports available. Each port is GEN3 capable
30781c362e7SBjorn Helgaas	  and have varied lanes from x1 to x8.
30881c362e7SBjorn Helgaas
30981c362e7SBjorn Helgaasconfig PCI_XGENE_MSI
31081c362e7SBjorn Helgaas	bool "X-Gene v1 PCIe MSI feature"
31181c362e7SBjorn Helgaas	depends on PCI_XGENE
31281c362e7SBjorn Helgaas	depends on PCI_MSI
313ae79351eSMarc Zyngier	select IRQ_MSI_LIB
31481c362e7SBjorn Helgaas	default y
31581c362e7SBjorn Helgaas	help
31681c362e7SBjorn Helgaas	  Say Y here if you want PCIe MSI support for the APM X-Gene v1 SoC.
31781c362e7SBjorn Helgaas	  This MSI driver supports 5 PCIe ports on the APM X-Gene v1 SoC.
31881c362e7SBjorn Helgaas
31981c362e7SBjorn Helgaasconfig PCIE_XILINX
32081c362e7SBjorn Helgaas	bool "Xilinx AXI PCIe controller"
321ab072a3bSJean Delvare	depends on OF
322a474d3fbSThomas Gleixner	depends on PCI_MSI
3236e0832faSShawn Lin	help
32481c362e7SBjorn Helgaas	  Say 'Y' here if you want kernel to support the Xilinx AXI PCIe
3256f15a9c9SDaire McNamara	  Host Bridge driver.
3266f15a9c9SDaire McNamara
3278d786149SThippeswamy Havaligeconfig PCIE_XILINX_DMA_PL
3288d786149SThippeswamy Havalige	bool "Xilinx DMA PL PCIe host bridge support"
3298d786149SThippeswamy Havalige	depends on ARCH_ZYNQMP || COMPILE_TEST
3308d786149SThippeswamy Havalige	depends on PCI_MSI
3318d786149SThippeswamy Havalige	select PCI_HOST_COMMON
3328d786149SThippeswamy Havalige	help
3338d786149SThippeswamy Havalige	  Say 'Y' here if you want kernel support for the Xilinx PL DMA
3348d786149SThippeswamy Havalige	  PCIe host bridge. The controller is a Soft IP which can act as
3358d786149SThippeswamy Havalige	  Root Port. If your system provides Xilinx PCIe host controller
3368d786149SThippeswamy Havalige	  bridge DMA as Soft IP say 'Y'; if you are not sure, say 'N'.
3378d786149SThippeswamy Havalige
33881c362e7SBjorn Helgaasconfig PCIE_XILINX_NWL
33981c362e7SBjorn Helgaas	bool "Xilinx NWL PCIe controller"
34081c362e7SBjorn Helgaas	depends on ARCH_ZYNQMP || COMPILE_TEST
341a474d3fbSThomas Gleixner	depends on PCI_MSI
34281c362e7SBjorn Helgaas	help
34381c362e7SBjorn Helgaas	 Say 'Y' here if you want kernel support for Xilinx
34481c362e7SBjorn Helgaas	 NWL PCIe controller. The controller can act as Root Port
34581c362e7SBjorn Helgaas	 or End Point. The current option selection will only
34681c362e7SBjorn Helgaas	 support root port enabling.
34781c362e7SBjorn Helgaas
34881c362e7SBjorn Helgaasconfig PCIE_XILINX_CPM
34981c362e7SBjorn Helgaas	bool "Xilinx Versal CPM PCI controller"
35081c362e7SBjorn Helgaas	depends on ARCH_ZYNQMP || COMPILE_TEST
3511e33888fSAlyssa Rosenzweig	select PCI_HOST_COMMON
3521e33888fSAlyssa Rosenzweig	help
35381c362e7SBjorn Helgaas	  Say 'Y' here if you want kernel support for the
35481c362e7SBjorn Helgaas	  Xilinx Versal CPM host bridge.
3551e33888fSAlyssa Rosenzweig
35681c362e7SBjorn Helgaassource "drivers/pci/controller/cadence/Kconfig"
3576e0832faSShawn Linsource "drivers/pci/controller/dwc/Kconfig"
35803bdc388SHou Zhiqiangsource "drivers/pci/controller/mobiveil/Kconfig"
35924934ee8SMinda Chensource "drivers/pci/controller/plda/Kconfig"
3606e0832faSShawn Linendmenu
361