forked from Qortal/Brooklyn
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
318 lines
9.3 KiB
318 lines
9.3 KiB
# SPDX-License-Identifier: GPL-2.0 |
|
|
|
menu "PCI controller drivers" |
|
depends on PCI |
|
|
|
config PCI_MVEBU |
|
bool "Marvell EBU PCIe controller" |
|
depends on ARCH_MVEBU || ARCH_DOVE || COMPILE_TEST |
|
depends on MVEBU_MBUS |
|
depends on ARM |
|
depends on OF |
|
select PCI_BRIDGE_EMUL |
|
|
|
config PCI_AARDVARK |
|
tristate "Aardvark PCIe controller" |
|
depends on (ARCH_MVEBU && ARM64) || COMPILE_TEST |
|
depends on OF |
|
depends on PCI_MSI_IRQ_DOMAIN |
|
select PCI_BRIDGE_EMUL |
|
help |
|
Add support for Aardvark 64bit PCIe Host Controller. This |
|
controller is part of the South Bridge of the Marvel Armada |
|
3700 SoC. |
|
|
|
config PCIE_XILINX_NWL |
|
bool "NWL PCIe Core" |
|
depends on ARCH_ZYNQMP || COMPILE_TEST |
|
depends on PCI_MSI_IRQ_DOMAIN |
|
help |
|
Say 'Y' here if you want kernel support for Xilinx |
|
NWL PCIe controller. The controller can act as Root Port |
|
or End Point. The current option selection will only |
|
support root port enabling. |
|
|
|
config PCI_FTPCI100 |
|
bool "Faraday Technology FTPCI100 PCI controller" |
|
depends on OF |
|
default ARCH_GEMINI |
|
|
|
config PCI_IXP4XX |
|
bool "Intel IXP4xx PCI controller" |
|
depends on ARM && OF |
|
depends on ARCH_IXP4XX || COMPILE_TEST |
|
default ARCH_IXP4XX |
|
help |
|
Say Y here if you want support for the PCI host controller found |
|
in the Intel IXP4xx XScale-based network processor SoC. |
|
|
|
config PCI_TEGRA |
|
bool "NVIDIA Tegra PCIe controller" |
|
depends on ARCH_TEGRA || COMPILE_TEST |
|
depends on PCI_MSI_IRQ_DOMAIN |
|
help |
|
Say Y here if you want support for the PCIe host controller found |
|
on NVIDIA Tegra SoCs. |
|
|
|
config PCI_RCAR_GEN2 |
|
bool "Renesas R-Car Gen2 Internal PCI controller" |
|
depends on ARCH_RENESAS || COMPILE_TEST |
|
depends on ARM |
|
help |
|
Say Y here if you want internal PCI support on R-Car Gen2 SoC. |
|
There are 3 internal PCI controllers available with a single |
|
built-in EHCI/OHCI host controller present on each one. |
|
|
|
config PCIE_RCAR_HOST |
|
bool "Renesas R-Car PCIe host controller" |
|
depends on ARCH_RENESAS || COMPILE_TEST |
|
depends on PCI_MSI_IRQ_DOMAIN |
|
help |
|
Say Y here if you want PCIe controller support on R-Car SoCs in host |
|
mode. |
|
|
|
config PCIE_RCAR_EP |
|
bool "Renesas R-Car PCIe endpoint controller" |
|
depends on ARCH_RENESAS || COMPILE_TEST |
|
depends on PCI_ENDPOINT |
|
help |
|
Say Y here if you want PCIe controller support on R-Car SoCs in |
|
endpoint mode. |
|
|
|
config PCI_HOST_COMMON |
|
tristate |
|
select PCI_ECAM |
|
|
|
config PCI_HOST_GENERIC |
|
tristate "Generic PCI host controller" |
|
depends on OF |
|
select PCI_HOST_COMMON |
|
select IRQ_DOMAIN |
|
help |
|
Say Y here if you want to support a simple generic PCI host |
|
controller, such as the one emulated by kvmtool. |
|
|
|
config PCIE_XILINX |
|
bool "Xilinx AXI PCIe host bridge support" |
|
depends on OF || COMPILE_TEST |
|
depends on PCI_MSI_IRQ_DOMAIN |
|
help |
|
Say 'Y' here if you want kernel to support the Xilinx AXI PCIe |
|
Host Bridge driver. |
|
|
|
config PCIE_XILINX_CPM |
|
bool "Xilinx Versal CPM host bridge support" |
|
depends on ARCH_ZYNQMP || COMPILE_TEST |
|
select PCI_HOST_COMMON |
|
help |
|
Say 'Y' here if you want kernel support for the |
|
Xilinx Versal CPM host bridge. |
|
|
|
config PCI_XGENE |
|
bool "X-Gene PCIe controller" |
|
depends on ARM64 || COMPILE_TEST |
|
depends on OF || (ACPI && PCI_QUIRKS) |
|
help |
|
Say Y here if you want internal PCI support on APM X-Gene SoC. |
|
There are 5 internal PCIe ports available. Each port is GEN3 capable |
|
and have varied lanes from x1 to x8. |
|
|
|
config PCI_XGENE_MSI |
|
bool "X-Gene v1 PCIe MSI feature" |
|
depends on PCI_XGENE |
|
depends on PCI_MSI_IRQ_DOMAIN |
|
default y |
|
help |
|
Say Y here if you want PCIe MSI support for the APM X-Gene v1 SoC. |
|
This MSI driver supports 5 PCIe ports on the APM X-Gene v1 SoC. |
|
|
|
config PCI_V3_SEMI |
|
bool "V3 Semiconductor PCI controller" |
|
depends on OF |
|
depends on ARM || COMPILE_TEST |
|
default ARCH_INTEGRATOR_AP |
|
|
|
config PCI_VERSATILE |
|
bool "ARM Versatile PB PCI controller" |
|
depends on ARCH_VERSATILE || COMPILE_TEST |
|
|
|
config PCIE_IPROC |
|
tristate |
|
help |
|
This enables the iProc PCIe core controller support for Broadcom's |
|
iProc family of SoCs. An appropriate bus interface driver needs |
|
to be enabled to select this. |
|
|
|
config PCIE_IPROC_PLATFORM |
|
tristate "Broadcom iProc PCIe platform bus driver" |
|
depends on ARCH_BCM_IPROC || (ARM && COMPILE_TEST) |
|
depends on OF |
|
select PCIE_IPROC |
|
default ARCH_BCM_IPROC |
|
help |
|
Say Y here if you want to use the Broadcom iProc PCIe controller |
|
through the generic platform bus interface |
|
|
|
config PCIE_IPROC_BCMA |
|
tristate "Broadcom iProc PCIe BCMA bus driver" |
|
depends on ARM && (ARCH_BCM_IPROC || COMPILE_TEST) |
|
select PCIE_IPROC |
|
select BCMA |
|
default ARCH_BCM_5301X |
|
help |
|
Say Y here if you want to use the Broadcom iProc PCIe controller |
|
through the BCMA bus interface |
|
|
|
config PCIE_IPROC_MSI |
|
bool "Broadcom iProc PCIe MSI support" |
|
depends on PCIE_IPROC_PLATFORM || PCIE_IPROC_BCMA |
|
depends on PCI_MSI_IRQ_DOMAIN |
|
default ARCH_BCM_IPROC |
|
help |
|
Say Y here if you want to enable MSI support for Broadcom's iProc |
|
PCIe controller |
|
|
|
config PCIE_ALTERA |
|
tristate "Altera PCIe controller" |
|
depends on ARM || NIOS2 || ARM64 || COMPILE_TEST |
|
help |
|
Say Y here if you want to enable PCIe controller support on Altera |
|
FPGA. |
|
|
|
config PCIE_ALTERA_MSI |
|
tristate "Altera PCIe MSI feature" |
|
depends on PCIE_ALTERA |
|
depends on PCI_MSI_IRQ_DOMAIN |
|
help |
|
Say Y here if you want PCIe MSI support for the Altera FPGA. |
|
This MSI driver supports Altera MSI to GIC controller IP. |
|
|
|
config PCI_HOST_THUNDER_PEM |
|
bool "Cavium Thunder PCIe controller to off-chip devices" |
|
depends on ARM64 || COMPILE_TEST |
|
depends on OF || (ACPI && PCI_QUIRKS) |
|
select PCI_HOST_COMMON |
|
help |
|
Say Y here if you want PCIe support for CN88XX Cavium Thunder SoCs. |
|
|
|
config PCI_HOST_THUNDER_ECAM |
|
bool "Cavium Thunder ECAM controller to on-chip devices on pass-1.x silicon" |
|
depends on ARM64 || COMPILE_TEST |
|
depends on OF || (ACPI && PCI_QUIRKS) |
|
select PCI_HOST_COMMON |
|
help |
|
Say Y here if you want ECAM support for CN88XX-Pass-1.x Cavium Thunder SoCs. |
|
|
|
config PCIE_ROCKCHIP |
|
bool |
|
depends on PCI |
|
|
|
config PCIE_ROCKCHIP_HOST |
|
tristate "Rockchip PCIe host controller" |
|
depends on ARCH_ROCKCHIP || COMPILE_TEST |
|
depends on OF |
|
depends on PCI_MSI_IRQ_DOMAIN |
|
select MFD_SYSCON |
|
select PCIE_ROCKCHIP |
|
help |
|
Say Y here if you want internal PCI support on Rockchip SoC. |
|
There is 1 internal PCIe port available to support GEN2 with |
|
4 slots. |
|
|
|
config PCIE_ROCKCHIP_EP |
|
bool "Rockchip PCIe endpoint controller" |
|
depends on ARCH_ROCKCHIP || COMPILE_TEST |
|
depends on OF |
|
depends on PCI_ENDPOINT |
|
select MFD_SYSCON |
|
select PCIE_ROCKCHIP |
|
help |
|
Say Y here if you want to support Rockchip PCIe controller in |
|
endpoint mode on Rockchip SoC. There is 1 internal PCIe port |
|
available to support GEN2 with 4 slots. |
|
|
|
config PCIE_MEDIATEK |
|
tristate "MediaTek PCIe controller" |
|
depends on ARCH_MEDIATEK || COMPILE_TEST |
|
depends on OF |
|
depends on PCI_MSI_IRQ_DOMAIN |
|
help |
|
Say Y here if you want to enable PCIe controller support on |
|
MediaTek SoCs. |
|
|
|
config PCIE_MEDIATEK_GEN3 |
|
tristate "MediaTek Gen3 PCIe controller" |
|
depends on ARCH_MEDIATEK || COMPILE_TEST |
|
depends on PCI_MSI_IRQ_DOMAIN |
|
help |
|
Adds support for PCIe Gen3 MAC controller for MediaTek SoCs. |
|
This PCIe controller is compatible with Gen3, Gen2 and Gen1 speed, |
|
and support up to 256 MSI interrupt numbers for |
|
multi-function devices. |
|
|
|
Say Y here if you want to enable Gen3 PCIe controller support on |
|
MediaTek SoCs. |
|
|
|
config VMD |
|
depends on PCI_MSI && X86_64 && SRCU |
|
tristate "Intel Volume Management Device Driver" |
|
help |
|
Adds support for the Intel Volume Management Device (VMD). VMD is a |
|
secondary PCI host bridge that allows PCI Express root ports, |
|
and devices attached to them, to be removed from the default |
|
PCI domain and placed within the VMD domain. This provides |
|
more bus resources than are otherwise possible with a |
|
single domain. If you know your system provides one of these and |
|
has devices attached to it, say Y; if you are not sure, say N. |
|
|
|
To compile this driver as a module, choose M here: the |
|
module will be called vmd. |
|
|
|
config PCIE_BRCMSTB |
|
tristate "Broadcom Brcmstb PCIe host controller" |
|
depends on ARCH_BRCMSTB || ARCH_BCM2835 || ARCH_BCM4908 || COMPILE_TEST |
|
depends on OF |
|
depends on PCI_MSI_IRQ_DOMAIN |
|
default ARCH_BRCMSTB |
|
help |
|
Say Y here to enable PCIe host controller support for |
|
Broadcom STB based SoCs, like the Raspberry Pi 4. |
|
|
|
config PCI_HYPERV_INTERFACE |
|
tristate "Hyper-V PCI Interface" |
|
depends on X86 && HYPERV && PCI_MSI && PCI_MSI_IRQ_DOMAIN && X86_64 |
|
help |
|
The Hyper-V PCI Interface is a helper driver allows other drivers to |
|
have a common interface with the Hyper-V PCI frontend driver. |
|
|
|
config PCI_LOONGSON |
|
bool "LOONGSON PCI Controller" |
|
depends on MACH_LOONGSON64 || COMPILE_TEST |
|
depends on OF |
|
depends on PCI_QUIRKS |
|
default MACH_LOONGSON64 |
|
help |
|
Say Y here if you want to enable PCI controller support on |
|
Loongson systems. |
|
|
|
config PCIE_MICROCHIP_HOST |
|
bool "Microchip AXI PCIe host bridge support" |
|
depends on PCI_MSI && OF |
|
select PCI_MSI_IRQ_DOMAIN |
|
select GENERIC_MSI_IRQ_DOMAIN |
|
select PCI_HOST_COMMON |
|
help |
|
Say Y here if you want kernel to support the Microchip AXI PCIe |
|
Host Bridge driver. |
|
|
|
config PCIE_HISI_ERR |
|
depends on ACPI_APEI_GHES && (ARM64 || COMPILE_TEST) |
|
bool "HiSilicon HIP PCIe controller error handling driver" |
|
help |
|
Say Y here if you want error handling support |
|
for the PCIe controller's errors on HiSilicon HIP SoCs |
|
|
|
source "drivers/pci/controller/dwc/Kconfig" |
|
source "drivers/pci/controller/mobiveil/Kconfig" |
|
source "drivers/pci/controller/cadence/Kconfig" |
|
endmenu
|
|
|