Linux kernel mirror (for testing)
git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel
os
linux
1menu "PCI host controller drivers"
2 depends on PCI
3
4config PCI_MVEBU
5 bool "Marvell EBU PCIe controller"
6 depends on ARCH_MVEBU || ARCH_DOVE
7 depends on ARM
8 depends on OF
9
10config PCI_AARDVARK
11 bool "Aardvark PCIe controller"
12 depends on ARCH_MVEBU && ARM64
13 depends on OF
14 depends on PCI_MSI_IRQ_DOMAIN
15 help
16 Add support for Aardvark 64bit PCIe Host Controller. This
17 controller is part of the South Bridge of the Marvel Armada
18 3700 SoC.
19
20config PCIE_XILINX_NWL
21 bool "NWL PCIe Core"
22 depends on ARCH_ZYNQMP
23 depends on PCI_MSI_IRQ_DOMAIN
24 help
25 Say 'Y' here if you want kernel support for Xilinx
26 NWL PCIe controller. The controller can act as Root Port
27 or End Point. The current option selection will only
28 support root port enabling.
29
30config PCI_TEGRA
31 bool "NVIDIA Tegra PCIe controller"
32 depends on ARCH_TEGRA
33 help
34 Say Y here if you want support for the PCIe host controller found
35 on NVIDIA Tegra SoCs.
36
37config PCI_RCAR_GEN2
38 bool "Renesas R-Car Gen2 Internal PCI controller"
39 depends on ARM
40 depends on ARCH_RENESAS || COMPILE_TEST
41 help
42 Say Y here if you want internal PCI support on R-Car Gen2 SoC.
43 There are 3 internal PCI controllers available with a single
44 built-in EHCI/OHCI host controller present on each one.
45
46config 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
53config PCI_HOST_COMMON
54 bool
55 select PCI_ECAM
56
57config PCI_HOST_GENERIC
58 bool "Generic PCI host controller"
59 depends on (ARM || ARM64) && OF
60 select PCI_HOST_COMMON
61 select IRQ_DOMAIN
62 help
63 Say Y here if you want to support a simple generic PCI host
64 controller, such as the one emulated by kvmtool.
65
66config PCIE_XILINX
67 bool "Xilinx AXI PCIe host bridge support"
68 depends on ARCH_ZYNQ || MICROBLAZE
69 help
70 Say 'Y' here if you want kernel to support the Xilinx AXI PCIe
71 Host Bridge driver.
72
73config PCI_XGENE
74 bool "X-Gene PCIe controller"
75 depends on ARM64
76 depends on OF || (ACPI && PCI_QUIRKS)
77 select PCIEPORTBUS
78 help
79 Say Y here if you want internal PCI support on APM X-Gene SoC.
80 There are 5 internal PCIe ports available. Each port is GEN3 capable
81 and have varied lanes from x1 to x8.
82
83config PCI_XGENE_MSI
84 bool "X-Gene v1 PCIe MSI feature"
85 depends on PCI_XGENE
86 depends on PCI_MSI_IRQ_DOMAIN
87 default y
88 help
89 Say Y here if you want PCIe MSI support for the APM X-Gene v1 SoC.
90 This MSI driver supports 5 PCIe ports on the APM X-Gene v1 SoC.
91
92config PCI_VERSATILE
93 bool "ARM Versatile PB PCI controller"
94 depends on ARCH_VERSATILE
95
96config PCIE_IPROC
97 tristate
98 help
99 This enables the iProc PCIe core controller support for Broadcom's
100 iProc family of SoCs. An appropriate bus interface driver needs
101 to be enabled to select this.
102
103config PCIE_IPROC_PLATFORM
104 tristate "Broadcom iProc PCIe platform bus driver"
105 depends on ARCH_BCM_IPROC || (ARM && COMPILE_TEST)
106 depends on OF
107 select PCIE_IPROC
108 default ARCH_BCM_IPROC
109 help
110 Say Y here if you want to use the Broadcom iProc PCIe controller
111 through the generic platform bus interface
112
113config PCIE_IPROC_BCMA
114 tristate "Broadcom iProc PCIe BCMA bus driver"
115 depends on ARM && (ARCH_BCM_IPROC || COMPILE_TEST)
116 select PCIE_IPROC
117 select BCMA
118 select PCI_DOMAINS
119 default ARCH_BCM_5301X
120 help
121 Say Y here if you want to use the Broadcom iProc PCIe controller
122 through the BCMA bus interface
123
124config PCIE_IPROC_MSI
125 bool "Broadcom iProc PCIe MSI support"
126 depends on PCIE_IPROC_PLATFORM || PCIE_IPROC_BCMA
127 depends on PCI_MSI_IRQ_DOMAIN
128 default ARCH_BCM_IPROC
129 help
130 Say Y here if you want to enable MSI support for Broadcom's iProc
131 PCIe controller
132
133config PCIE_ALTERA
134 bool "Altera PCIe controller"
135 depends on ARM || NIOS2
136 depends on OF_PCI
137 select PCI_DOMAINS
138 help
139 Say Y here if you want to enable PCIe controller support on Altera
140 FPGA.
141
142config PCIE_ALTERA_MSI
143 bool "Altera PCIe MSI feature"
144 depends on PCIE_ALTERA
145 depends on PCI_MSI_IRQ_DOMAIN
146 help
147 Say Y here if you want PCIe MSI support for the Altera FPGA.
148 This MSI driver supports Altera MSI to GIC controller IP.
149
150config PCI_HOST_THUNDER_PEM
151 bool "Cavium Thunder PCIe controller to off-chip devices"
152 depends on ARM64
153 depends on OF || (ACPI && PCI_QUIRKS)
154 select PCI_HOST_COMMON
155 help
156 Say Y here if you want PCIe support for CN88XX Cavium Thunder SoCs.
157
158config PCI_HOST_THUNDER_ECAM
159 bool "Cavium Thunder ECAM controller to on-chip devices on pass-1.x silicon"
160 depends on ARM64
161 depends on OF || (ACPI && PCI_QUIRKS)
162 select PCI_HOST_COMMON
163 help
164 Say Y here if you want ECAM support for CN88XX-Pass-1.x Cavium Thunder SoCs.
165
166config PCIE_ROCKCHIP
167 bool "Rockchip PCIe controller"
168 depends on ARCH_ROCKCHIP || COMPILE_TEST
169 depends on OF
170 depends on PCI_MSI_IRQ_DOMAIN
171 select MFD_SYSCON
172 help
173 Say Y here if you want internal PCI support on Rockchip SoC.
174 There is 1 internal PCIe port available to support GEN2 with
175 4 slots.
176
177config VMD
178 depends on PCI_MSI && X86_64 && SRCU
179 tristate "Intel Volume Management Device Driver"
180 default N
181 ---help---
182 Adds support for the Intel Volume Management Device (VMD). VMD is a
183 secondary PCI host bridge that allows PCI Express root ports,
184 and devices attached to them, to be removed from the default
185 PCI domain and placed within the VMD domain. This provides
186 more bus resources than are otherwise possible with a
187 single domain. If you know your system provides one of these and
188 has devices attached to it, say Y; if you are not sure, say N.
189
190 To compile this driver as a module, choose M here: the
191 module will be called vmd.
192
193endmenu