Kconfig 5.5 KB
Newer Older
1 2 3 4 5
menu "PCI host controller drivers"
	depends on PCI

config PCI_MVEBU
	bool "Marvell EBU PCIe controller"
6
	depends on ARCH_MVEBU || ARCH_DOVE
7
	depends on ARM
8
	depends on OF
9

10 11 12 13 14 15 16 17 18
config PCI_AARDVARK
	bool "Aardvark PCIe controller"
	depends on ARCH_MVEBU && ARM64
	depends on OF
	depends on PCI_MSI_IRQ_DOMAIN
	help
	 Add support for Aardvark 64bit PCIe Host Controller. This
	 controller is part of the South Bridge of the Marvel Armada
	 3700 SoC.
19

20 21 22
config PCIE_XILINX_NWL
	bool "NWL PCIe Core"
	depends on ARCH_ZYNQMP
23
	depends on PCI_MSI_IRQ_DOMAIN
24 25 26 27 28 29
	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.

30 31
config PCI_TEGRA
	bool "NVIDIA Tegra PCIe controller"
32
	depends on ARCH_TEGRA
T
Thierry Reding 已提交
33 34 35
	help
	  Say Y here if you want support for the PCIe host controller found
	  on NVIDIA Tegra SoCs.
36

37 38
config PCI_RCAR_GEN2
	bool "Renesas R-Car Gen2 Internal PCI controller"
39
	depends on ARM
40
	depends on ARCH_RENESAS || COMPILE_TEST
41 42 43 44 45
	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.

46
config PCIE_RCAR
47
	bool "Renesas R-Car PCIe controller"
48
	depends on ARCH_RENESAS || (ARM && COMPILE_TEST)
49
	depends on PCI_MSI_IRQ_DOMAIN
50
	help
51
	  Say Y here if you want PCIe controller support on R-Car SoCs.
52

53 54
config PCI_HOST_COMMON
	bool
55
	select PCI_ECAM
56

57 58
config PCI_HOST_GENERIC
	bool "Generic PCI host controller"
J
Jayachandran C 已提交
59
	depends on (ARM || ARM64) && OF
60
	select PCI_HOST_COMMON
A
Arnd Bergmann 已提交
61
	select IRQ_DOMAIN
62 63 64 65
	help
	  Say Y here if you want to support a simple generic PCI host
	  controller, such as the one emulated by kvmtool.

66 67
config PCIE_XILINX
	bool "Xilinx AXI PCIe host bridge support"
68
	depends on ARCH_ZYNQ || MICROBLAZE
69 70 71 72
	help
	  Say 'Y' here if you want kernel to support the Xilinx AXI PCIe
	  Host Bridge driver.

73 74
config PCI_XGENE
	bool "X-Gene PCIe controller"
75 76
	depends on ARM64
	depends on OF || (ACPI && PCI_QUIRKS)
77 78 79 80 81 82
	select PCIEPORTBUS
	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.

83 84
config PCI_XGENE_MSI
	bool "X-Gene v1 PCIe MSI feature"
85 86
	depends on PCI_XGENE
	depends on PCI_MSI_IRQ_DOMAIN
87 88 89 90 91
	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.

92 93 94 95
config PCI_VERSATILE
	bool "ARM Versatile PB PCI controller"
	depends on ARCH_VERSATILE

96
config PCIE_IPROC
A
Arnd Bergmann 已提交
97
	tristate
98 99
	help
	  This enables the iProc PCIe core controller support for Broadcom's
A
Arnd Bergmann 已提交
100 101
	  iProc family of SoCs. An appropriate bus interface driver needs
	  to be enabled to select this.
102 103 104 105 106 107 108 109 110 111 112

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

113
config PCIE_IPROC_BCMA
114
	tristate "Broadcom iProc PCIe BCMA bus driver"
115
	depends on ARM && (ARCH_BCM_IPROC || COMPILE_TEST)
116 117 118 119 120 121 122 123
	select PCIE_IPROC
	select BCMA
	select PCI_DOMAINS
	default ARCH_BCM_5301X
	help
	  Say Y here if you want to use the Broadcom iProc PCIe controller
	  through the BCMA bus interface

R
Ray Jui 已提交
124 125 126
config PCIE_IPROC_MSI
	bool "Broadcom iProc PCIe MSI support"
	depends on PCIE_IPROC_PLATFORM || PCIE_IPROC_BCMA
127
	depends on PCI_MSI_IRQ_DOMAIN
R
Ray Jui 已提交
128 129 130 131 132
	default ARCH_BCM_IPROC
	help
	  Say Y here if you want to enable MSI support for Broadcom's iProc
	  PCIe controller

133 134 135 136 137 138 139 140 141
config PCIE_ALTERA
	bool "Altera PCIe controller"
	depends on ARM || NIOS2
	depends on OF_PCI
	select PCI_DOMAINS
	help
	  Say Y here if you want to enable PCIe controller support on Altera
	  FPGA.

142 143
config PCIE_ALTERA_MSI
	bool "Altera PCIe MSI feature"
144 145
	depends on PCIE_ALTERA
	depends on PCI_MSI_IRQ_DOMAIN
146 147 148 149
	help
	  Say Y here if you want PCIe MSI support for the Altera FPGA.
	  This MSI driver supports Altera MSI to GIC controller IP.

150 151
config PCI_HOST_THUNDER_PEM
	bool "Cavium Thunder PCIe controller to off-chip devices"
152 153
	depends on ARM64
	depends on OF || (ACPI && PCI_QUIRKS)
154 155 156 157
	select PCI_HOST_COMMON
	help
	  Say Y here if you want PCIe support for CN88XX Cavium Thunder SoCs.

158 159
config PCI_HOST_THUNDER_ECAM
	bool "Cavium Thunder ECAM controller to on-chip devices on pass-1.x silicon"
160 161
	depends on ARM64
	depends on OF || (ACPI && PCI_QUIRKS)
162 163 164 165
	select PCI_HOST_COMMON
	help
	  Say Y here if you want ECAM support for CN88XX-Pass-1.x Cavium Thunder SoCs.

166 167
config PCIE_ROCKCHIP
	bool "Rockchip PCIe controller"
168
	depends on ARCH_ROCKCHIP || COMPILE_TEST
169 170 171 172 173 174 175 176
	depends on OF
	depends on PCI_MSI_IRQ_DOMAIN
	select MFD_SYSCON
	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.

177
config VMD
178
	depends on PCI_MSI && X86_64 && SRCU
179 180 181 182 183 184 185 186 187 188 189 190 191 192
	tristate "Intel Volume Management Device Driver"
	default N
	---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.

193
endmenu