xref: /linux/drivers/pci/controller/Kconfig (revision 0bd0a41a5120f78685a132834865b0a631b9026a)
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"
159*d7d8ab87SNam Cao	select IRQ_MSI_LIB
16081c362e7SBjorn Helgaas	help
16181c362e7SBjorn Helgaas	  Adds support for the Intel Volume Management Device (VMD). VMD is a
16281c362e7SBjorn Helgaas	  secondary PCI host bridge that allows PCI Express root ports,
16381c362e7SBjorn Helgaas	  and devices attached to them, to be removed from the default
16481c362e7SBjorn Helgaas	  PCI domain and placed within the VMD domain. This provides
16581c362e7SBjorn Helgaas	  more bus resources than are otherwise possible with a
16681c362e7SBjorn Helgaas	  single domain. If you know your system provides one of these and
16781c362e7SBjorn Helgaas	  has devices attached to it, say Y; if you are not sure, say N.
16881c362e7SBjorn Helgaas
16981c362e7SBjorn Helgaas	  To compile this driver as a module, choose M here: the
17081c362e7SBjorn Helgaas	  module will be called vmd.
17181c362e7SBjorn Helgaas
17281c362e7SBjorn Helgaasconfig PCI_LOONGSON
17381c362e7SBjorn Helgaas	bool "LOONGSON PCIe controller"
17481c362e7SBjorn Helgaas	depends on MACH_LOONGSON64 || COMPILE_TEST
17581c362e7SBjorn Helgaas	depends on OF || ACPI
17681c362e7SBjorn Helgaas	depends on PCI_QUIRKS
17781c362e7SBjorn Helgaas	default MACH_LOONGSON64
17881c362e7SBjorn Helgaas	help
17981c362e7SBjorn Helgaas	  Say Y here if you want to enable PCI controller support on
18081c362e7SBjorn Helgaas	  Loongson systems.
18181c362e7SBjorn Helgaas
18281c362e7SBjorn Helgaasconfig PCI_MVEBU
18381c362e7SBjorn Helgaas	tristate "Marvell EBU PCIe controller"
18481c362e7SBjorn Helgaas	depends on ARCH_MVEBU || ARCH_DOVE || COMPILE_TEST
18581c362e7SBjorn Helgaas	depends on MVEBU_MBUS
18681c362e7SBjorn Helgaas	depends on ARM
18781c362e7SBjorn Helgaas	depends on OF
18881c362e7SBjorn Helgaas	select PCI_BRIDGE_EMUL
18981c362e7SBjorn Helgaas	help
19081c362e7SBjorn Helgaas	 Add support for Marvell EBU PCIe controller. This PCIe controller
19181c362e7SBjorn Helgaas	 is used on 32-bit Marvell ARM SoCs: Dove, Kirkwood, Armada 370,
19281c362e7SBjorn Helgaas	 Armada XP, Armada 375, Armada 38x and Armada 39x.
19381c362e7SBjorn Helgaas
19481c362e7SBjorn Helgaasconfig PCIE_MEDIATEK
19581c362e7SBjorn Helgaas	tristate "MediaTek PCIe controller"
19681c362e7SBjorn Helgaas	depends on ARCH_AIROHA || ARCH_MEDIATEK || COMPILE_TEST
19781c362e7SBjorn Helgaas	depends on OF
19881c362e7SBjorn Helgaas	depends on PCI_MSI
199e449cb9aSNam Cao	select IRQ_MSI_LIB
20081c362e7SBjorn Helgaas	help
20181c362e7SBjorn Helgaas	  Say Y here if you want to enable PCIe controller support on
20281c362e7SBjorn Helgaas	  MediaTek SoCs.
20381c362e7SBjorn Helgaas
20481c362e7SBjorn Helgaasconfig PCIE_MEDIATEK_GEN3
20581c362e7SBjorn Helgaas	tristate "MediaTek Gen3 PCIe controller"
206f6ab8983SLorenzo Bianconi	depends on ARCH_AIROHA || ARCH_MEDIATEK || COMPILE_TEST
20781c362e7SBjorn Helgaas	depends on PCI_MSI
2089a35a264SNam Cao	select IRQ_MSI_LIB
20981c362e7SBjorn Helgaas	help
21081c362e7SBjorn Helgaas	  Adds support for PCIe Gen3 MAC controller for MediaTek SoCs.
21181c362e7SBjorn Helgaas	  This PCIe controller is compatible with Gen3, Gen2 and Gen1 speed,
21281c362e7SBjorn Helgaas	  and support up to 256 MSI interrupt numbers for
21381c362e7SBjorn Helgaas	  multi-function devices.
21481c362e7SBjorn Helgaas
21581c362e7SBjorn Helgaas	  Say Y here if you want to enable Gen3 PCIe controller support on
21681c362e7SBjorn Helgaas	  MediaTek SoCs.
21781c362e7SBjorn Helgaas
21881c362e7SBjorn Helgaasconfig PCIE_MT7621
21981c362e7SBjorn Helgaas	tristate "MediaTek MT7621 PCIe controller"
22081c362e7SBjorn Helgaas	depends on SOC_MT7621 || COMPILE_TEST
22181c362e7SBjorn Helgaas	select PHY_MT7621_PCI
22281c362e7SBjorn Helgaas	default SOC_MT7621
22381c362e7SBjorn Helgaas	help
22481c362e7SBjorn Helgaas	  This selects a driver for the MediaTek MT7621 PCIe Controller.
22581c362e7SBjorn Helgaas
22681c362e7SBjorn Helgaasconfig PCI_HYPERV_INTERFACE
22781c362e7SBjorn Helgaas	tristate "Microsoft Hyper-V PCI Interface"
22881c362e7SBjorn Helgaas	depends on ((X86 && X86_64) || ARM64) && HYPERV && PCI_MSI
22981c362e7SBjorn Helgaas	help
23081c362e7SBjorn Helgaas	  The Hyper-V PCI Interface is a helper driver that allows other
23181c362e7SBjorn Helgaas	  drivers to have a common interface with the Hyper-V PCI frontend
23281c362e7SBjorn Helgaas	  driver.
23381c362e7SBjorn Helgaas
23481c362e7SBjorn Helgaasconfig PCI_TEGRA
23581c362e7SBjorn Helgaas	bool "NVIDIA Tegra PCIe controller"
23681c362e7SBjorn Helgaas	depends on ARCH_TEGRA || COMPILE_TEST
23781c362e7SBjorn Helgaas	depends on PCI_MSI
23894424278SMarc Zyngier	select IRQ_MSI_LIB
23981c362e7SBjorn Helgaas	help
24081c362e7SBjorn Helgaas	  Say Y here if you want support for the PCIe host controller found
24181c362e7SBjorn Helgaas	  on NVIDIA Tegra SoCs.
24281c362e7SBjorn Helgaas
24381c362e7SBjorn Helgaasconfig PCIE_RCAR_HOST
24481c362e7SBjorn Helgaas	bool "Renesas R-Car PCIe controller (host mode)"
24581c362e7SBjorn Helgaas	depends on ARCH_RENESAS || COMPILE_TEST
24681c362e7SBjorn Helgaas	depends on PCI_MSI
247dd26c1a2SNam Cao	select IRQ_MSI_LIB
24881c362e7SBjorn Helgaas	help
24981c362e7SBjorn Helgaas	  Say Y here if you want PCIe controller support on R-Car SoCs in host
25081c362e7SBjorn Helgaas	  mode.
25181c362e7SBjorn Helgaas
25281c362e7SBjorn Helgaasconfig PCIE_RCAR_EP
25381c362e7SBjorn Helgaas	bool "Renesas R-Car PCIe controller (endpoint mode)"
25481c362e7SBjorn Helgaas	depends on ARCH_RENESAS || COMPILE_TEST
25581c362e7SBjorn Helgaas	depends on PCI_ENDPOINT
25681c362e7SBjorn Helgaas	help
25781c362e7SBjorn Helgaas	  Say Y here if you want PCIe controller support on R-Car SoCs in
25881c362e7SBjorn Helgaas	  endpoint mode.
25981c362e7SBjorn Helgaas
26081c362e7SBjorn Helgaasconfig PCI_RCAR_GEN2
26181c362e7SBjorn Helgaas	bool "Renesas R-Car Gen2 Internal PCI controller"
26281c362e7SBjorn Helgaas	depends on ARCH_RENESAS || COMPILE_TEST
26381c362e7SBjorn Helgaas	depends on ARM
26481c362e7SBjorn Helgaas	help
26581c362e7SBjorn Helgaas	  Say Y here if you want internal PCI support on R-Car Gen2 SoC.
26681c362e7SBjorn Helgaas	  There are 3 internal PCI controllers available with a single
26781c362e7SBjorn Helgaas	  built-in EHCI/OHCI host controller present on each one.
26881c362e7SBjorn Helgaas
2696e0832faSShawn Linconfig PCIE_ROCKCHIP
2706e0832faSShawn Lin	bool
2716e0832faSShawn Lin	depends on PCI
2726e0832faSShawn Lin
2736e0832faSShawn Linconfig PCIE_ROCKCHIP_HOST
27480c170d7SBjorn Helgaas	tristate "Rockchip PCIe controller (host mode)"
2756e0832faSShawn Lin	depends on ARCH_ROCKCHIP || COMPILE_TEST
2766e0832faSShawn Lin	depends on OF
277a474d3fbSThomas Gleixner	depends on PCI_MSI
2786e0832faSShawn Lin	select MFD_SYSCON
2796e0832faSShawn Lin	select PCIE_ROCKCHIP
2806e0832faSShawn Lin	help
2816e0832faSShawn Lin	  Say Y here if you want internal PCI support on Rockchip SoC.
2826e0832faSShawn Lin	  There is 1 internal PCIe port available to support GEN2 with
2836e0832faSShawn Lin	  4 slots.
2846e0832faSShawn Lin
2856e0832faSShawn Linconfig PCIE_ROCKCHIP_EP
28680c170d7SBjorn Helgaas	bool "Rockchip PCIe controller (endpoint mode)"
2876e0832faSShawn Lin	depends on ARCH_ROCKCHIP || COMPILE_TEST
2886e0832faSShawn Lin	depends on OF
2896e0832faSShawn Lin	depends on PCI_ENDPOINT
2906e0832faSShawn Lin	select MFD_SYSCON
2916e0832faSShawn Lin	select PCIE_ROCKCHIP
2926e0832faSShawn Lin	help
2936e0832faSShawn Lin	  Say Y here if you want to support Rockchip PCIe controller in
2946e0832faSShawn Lin	  endpoint mode on Rockchip SoC. There is 1 internal PCIe port
2956e0832faSShawn Lin	  available to support GEN2 with 4 slots.
2966e0832faSShawn Lin
29781c362e7SBjorn Helgaasconfig PCI_V3_SEMI
29881c362e7SBjorn Helgaas	bool "V3 Semiconductor PCI controller"
2996e0832faSShawn Lin	depends on OF
30081c362e7SBjorn Helgaas	depends on ARM || COMPILE_TEST
30181c362e7SBjorn Helgaas	default ARCH_INTEGRATOR_AP
30281c362e7SBjorn Helgaas
30381c362e7SBjorn Helgaasconfig PCI_XGENE
30481c362e7SBjorn Helgaas	bool "X-Gene PCIe controller"
30581c362e7SBjorn Helgaas	depends on ARM64 || COMPILE_TEST
30681c362e7SBjorn Helgaas	depends on OF || (ACPI && PCI_QUIRKS)
30781c362e7SBjorn Helgaas	help
30881c362e7SBjorn Helgaas	  Say Y here if you want internal PCI support on APM X-Gene SoC.
30981c362e7SBjorn Helgaas	  There are 5 internal PCIe ports available. Each port is GEN3 capable
31081c362e7SBjorn Helgaas	  and have varied lanes from x1 to x8.
31181c362e7SBjorn Helgaas
31281c362e7SBjorn Helgaasconfig PCI_XGENE_MSI
31381c362e7SBjorn Helgaas	bool "X-Gene v1 PCIe MSI feature"
31481c362e7SBjorn Helgaas	depends on PCI_XGENE
31581c362e7SBjorn Helgaas	depends on PCI_MSI
316ae79351eSMarc Zyngier	select IRQ_MSI_LIB
31781c362e7SBjorn Helgaas	default y
31881c362e7SBjorn Helgaas	help
31981c362e7SBjorn Helgaas	  Say Y here if you want PCIe MSI support for the APM X-Gene v1 SoC.
32081c362e7SBjorn Helgaas	  This MSI driver supports 5 PCIe ports on the APM X-Gene v1 SoC.
32181c362e7SBjorn Helgaas
32281c362e7SBjorn Helgaasconfig PCIE_XILINX
32381c362e7SBjorn Helgaas	bool "Xilinx AXI PCIe controller"
324ab072a3bSJean Delvare	depends on OF
325a474d3fbSThomas Gleixner	depends on PCI_MSI
326f29861aaSNam Cao	select IRQ_MSI_LIB
3276e0832faSShawn Lin	help
32881c362e7SBjorn Helgaas	  Say 'Y' here if you want kernel to support the Xilinx AXI PCIe
3296f15a9c9SDaire McNamara	  Host Bridge driver.
3306f15a9c9SDaire McNamara
3318d786149SThippeswamy Havaligeconfig PCIE_XILINX_DMA_PL
3328d786149SThippeswamy Havalige	bool "Xilinx DMA PL PCIe host bridge support"
3338d786149SThippeswamy Havalige	depends on ARCH_ZYNQMP || COMPILE_TEST
3348d786149SThippeswamy Havalige	depends on PCI_MSI
3358d786149SThippeswamy Havalige	select PCI_HOST_COMMON
336d08c7e50SNam Cao	select IRQ_MSI_LIB
3378d786149SThippeswamy Havalige	help
3388d786149SThippeswamy Havalige	  Say 'Y' here if you want kernel support for the Xilinx PL DMA
3398d786149SThippeswamy Havalige	  PCIe host bridge. The controller is a Soft IP which can act as
3408d786149SThippeswamy Havalige	  Root Port. If your system provides Xilinx PCIe host controller
3418d786149SThippeswamy Havalige	  bridge DMA as Soft IP say 'Y'; if you are not sure, say 'N'.
3428d786149SThippeswamy Havalige
34381c362e7SBjorn Helgaasconfig PCIE_XILINX_NWL
34481c362e7SBjorn Helgaas	bool "Xilinx NWL PCIe controller"
34581c362e7SBjorn Helgaas	depends on ARCH_ZYNQMP || COMPILE_TEST
346a474d3fbSThomas Gleixner	depends on PCI_MSI
347710a1494SNam Cao	select IRQ_MSI_LIB
34881c362e7SBjorn Helgaas	help
34981c362e7SBjorn Helgaas	 Say 'Y' here if you want kernel support for Xilinx
35081c362e7SBjorn Helgaas	 NWL PCIe controller. The controller can act as Root Port
35181c362e7SBjorn Helgaas	 or End Point. The current option selection will only
35281c362e7SBjorn Helgaas	 support root port enabling.
35381c362e7SBjorn Helgaas
35481c362e7SBjorn Helgaasconfig PCIE_XILINX_CPM
35581c362e7SBjorn Helgaas	bool "Xilinx Versal CPM PCI controller"
35681c362e7SBjorn Helgaas	depends on ARCH_ZYNQMP || COMPILE_TEST
3571e33888fSAlyssa Rosenzweig	select PCI_HOST_COMMON
3581e33888fSAlyssa Rosenzweig	help
35981c362e7SBjorn Helgaas	  Say 'Y' here if you want kernel support for the
36081c362e7SBjorn Helgaas	  Xilinx Versal CPM host bridge.
3611e33888fSAlyssa Rosenzweig
36281c362e7SBjorn Helgaassource "drivers/pci/controller/cadence/Kconfig"
3636e0832faSShawn Linsource "drivers/pci/controller/dwc/Kconfig"
36403bdc388SHou Zhiqiangsource "drivers/pci/controller/mobiveil/Kconfig"
36524934ee8SMinda Chensource "drivers/pci/controller/plda/Kconfig"
3666e0832faSShawn Linendmenu
367