]> git.proxmox.com Git - mirror_ubuntu-artful-kernel.git/blame - drivers/pci/host/Kconfig
PCI: artpec: Add Axis ARTPEC-6 PCIe controller driver
[mirror_ubuntu-artful-kernel.git] / drivers / pci / host / Kconfig
CommitLineData
45361a4f
TP
1menu "PCI host controller drivers"
2 depends on PCI
3
47ff3de9
KVA
4config PCI_DRA7XX
5 bool "TI DRA7xx PCIe controller"
6 select PCIE_DW
7 depends on OF && HAS_IOMEM && TI_PIPE3
8 help
9 Enables support for the PCIe controller in the DRA7xx SoC. There
10 are two instances of PCIe controller in DRA7xx. This controller can
11 act both as EP and RC. This reuses the Designware core.
12
45361a4f
TP
13config PCI_MVEBU
14 bool "Marvell EBU PCIe controller"
c2760208 15 depends on ARCH_MVEBU || ARCH_DOVE
61d9e854 16 depends on ARM
5477a33b 17 depends on OF
45361a4f 18
562df5c8 19
ab597d35
BKG
20config PCIE_XILINX_NWL
21 bool "NWL PCIe Core"
22 depends on ARCH_ZYNQMP
23 select PCI_MSI_IRQ_DOMAIN if PCI_MSI
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
5a3aa2a8
JP
30config PCIE_DW_PLAT
31 bool "Platform bus based DesignWare PCIe Controller"
32 select PCIE_DW
33 ---help---
34 This selects the DesignWare PCIe controller support. Select this if
35 you have a PCIe controller on Platform bus.
36
37 If you have a controller with this interface, say Y or M here.
38
39 If unsure, say N.
40
340cba60
JH
41config PCIE_DW
42 bool
43
44config PCI_EXYNOS
45 bool "Samsung Exynos PCIe controller"
46 depends on SOC_EXYNOS5440
47 select PCIEPORTBUS
48 select PCIE_DW
49
bb38919e
SC
50config PCI_IMX6
51 bool "Freescale i.MX6 PCIe controller"
52 depends on SOC_IMX6Q
53 select PCIEPORTBUS
54 select PCIE_DW
55
d1523b52
TR
56config PCI_TEGRA
57 bool "NVIDIA Tegra PCIe controller"
4407308b 58 depends on ARCH_TEGRA && !ARM64
6b1c4d76
TR
59 help
60 Say Y here if you want support for the PCIe host controller found
61 on NVIDIA Tegra SoCs.
d1523b52 62
ba3eb9fc
VB
63config PCI_RCAR_GEN2
64 bool "Renesas R-Car Gen2 Internal PCI controller"
6cbfeae7 65 depends on ARM
304e6d57 66 depends on ARCH_RENESAS || COMPILE_TEST
ba3eb9fc
VB
67 help
68 Say Y here if you want internal PCI support on R-Car Gen2 SoC.
69 There are 3 internal PCI controllers available with a single
70 built-in EHCI/OHCI host controller present on each one.
71
350a73b4 72config PCIE_RCAR
c25da477 73 bool "Renesas R-Car PCIe controller"
304e6d57 74 depends on ARCH_RENESAS || (ARM && COMPILE_TEST)
76ba8c1f
AB
75 select PCI_MSI
76 select PCI_MSI_IRQ_DOMAIN
c25da477 77 help
350a73b4 78 Say Y here if you want PCIe controller support on R-Car SoCs.
c25da477 79
4e64dbe2
DD
80config PCI_HOST_COMMON
81 bool
1958e717 82 select PCI_ECAM
4e64dbe2 83
ce292991
WD
84config PCI_HOST_GENERIC
85 bool "Generic PCI host controller"
aa4a5c0d 86 depends on (ARM || ARM64) && OF
4e64dbe2 87 select PCI_HOST_COMMON
ce292991
WD
88 help
89 Say Y here if you want to support a simple generic PCI host
90 controller, such as the one emulated by kvmtool.
91
51b66a6c 92config PCIE_SPEAR13XX
8d7004a6 93 bool "STMicroelectronics SPEAr PCIe controller"
51b66a6c
PA
94 depends on ARCH_SPEAR13XX
95 select PCIEPORTBUS
96 select PCIE_DW
97 help
98 Say Y here if you want PCIe support on SPEAr13XX SoCs.
99
0c4ffcfe
MK
100config PCI_KEYSTONE
101 bool "TI Keystone PCIe controller"
102 depends on ARCH_KEYSTONE
103 select PCIE_DW
104 select PCIEPORTBUS
105 help
106 Say Y here if you want to enable PCI controller support on Keystone
107 SoCs. The PCI controller on Keystone is based on Designware hardware
108 and therefore the driver re-uses the Designware core functions to
109 implement the driver.
a2351efe 110
8961def5
ST
111config PCIE_XILINX
112 bool "Xilinx AXI PCIe host bridge support"
01cf9d52 113 depends on ARCH_ZYNQ || MICROBLAZE
8961def5
ST
114 help
115 Say 'Y' here if you want kernel to support the Xilinx AXI PCIe
116 Host Bridge driver.
117
5f6b6ccd
TI
118config PCI_XGENE
119 bool "X-Gene PCIe controller"
120 depends on ARCH_XGENE
121 depends on OF
122 select PCIEPORTBUS
dcd19de3 123 select PCI_MSI_IRQ_DOMAIN if PCI_MSI
5f6b6ccd
TI
124 help
125 Say Y here if you want internal PCI support on APM X-Gene SoC.
126 There are 5 internal PCIe ports available. Each port is GEN3 capable
127 and have varied lanes from x1 to x8.
128
dcd19de3
DD
129config PCI_XGENE_MSI
130 bool "X-Gene v1 PCIe MSI feature"
131 depends on PCI_XGENE && PCI_MSI
132 default y
133 help
134 Say Y here if you want PCIe MSI support for the APM X-Gene v1 SoC.
135 This MSI driver supports 5 PCIe ports on the APM X-Gene v1 SoC.
136
62d0ff83
ML
137config PCI_LAYERSCAPE
138 bool "Freescale Layerscape PCIe controller"
5192ec7b 139 depends on OF && (ARM || ARCH_LAYERSCAPE)
62d0ff83
ML
140 select PCIE_DW
141 select MFD_SYSCON
142 help
143 Say Y here if you want PCIe controller support on Layerscape SoCs.
144
b7e78170
RH
145config PCI_VERSATILE
146 bool "ARM Versatile PB PCI controller"
147 depends on ARCH_VERSATILE
148
1fb37a81 149config PCIE_IPROC
c1b98e41 150 tristate
1fb37a81
RJ
151 help
152 This enables the iProc PCIe core controller support for Broadcom's
c1b98e41
AB
153 iProc family of SoCs. An appropriate bus interface driver needs
154 to be enabled to select this.
1fb37a81
RJ
155
156config PCIE_IPROC_PLATFORM
157 tristate "Broadcom iProc PCIe platform bus driver"
158 depends on ARCH_BCM_IPROC || (ARM && COMPILE_TEST)
159 depends on OF
160 select PCIE_IPROC
161 default ARCH_BCM_IPROC
162 help
163 Say Y here if you want to use the Broadcom iProc PCIe controller
164 through the generic platform bus interface
165
4785ffbd 166config PCIE_IPROC_BCMA
05aa7d6a 167 tristate "Broadcom iProc PCIe BCMA bus driver"
70d334ca 168 depends on ARM && (ARCH_BCM_IPROC || COMPILE_TEST)
4785ffbd
HM
169 select PCIE_IPROC
170 select BCMA
171 select PCI_DOMAINS
172 default ARCH_BCM_5301X
173 help
174 Say Y here if you want to use the Broadcom iProc PCIe controller
175 through the BCMA bus interface
176
3bc2b234
RJ
177config PCIE_IPROC_MSI
178 bool "Broadcom iProc PCIe MSI support"
179 depends on PCIE_IPROC_PLATFORM || PCIE_IPROC_BCMA
180 depends on PCI_MSI
181 select PCI_MSI_IRQ_DOMAIN
182 default ARCH_BCM_IPROC
183 help
184 Say Y here if you want to enable MSI support for Broadcom's iProc
185 PCIe controller
186
eaa6111b
LFT
187config PCIE_ALTERA
188 bool "Altera PCIe controller"
189 depends on ARM || NIOS2
190 depends on OF_PCI
191 select PCI_DOMAINS
192 help
193 Say Y here if you want to enable PCIe controller support on Altera
194 FPGA.
195
af1169b4
LFT
196config PCIE_ALTERA_MSI
197 bool "Altera PCIe MSI feature"
198 depends on PCIE_ALTERA && PCI_MSI
199 select PCI_MSI_IRQ_DOMAIN
200 help
201 Say Y here if you want PCIe MSI support for the Altera FPGA.
202 This MSI driver supports Altera MSI to GIC controller IP.
203
500a1d9a
ZW
204config PCI_HISI
205 depends on OF && ARM64
5930fe4e 206 bool "HiSilicon Hip05 and Hip06 SoCs PCIe controllers"
500a1d9a
ZW
207 select PCIEPORTBUS
208 select PCIE_DW
209 help
5930fe4e
GP
210 Say Y here if you want PCIe controller support on HiSilicon
211 Hip05 and Hip06 SoCs
500a1d9a 212
82a82383
SV
213config PCIE_QCOM
214 bool "Qualcomm PCIe controller"
215 depends on ARCH_QCOM && OF
216 select PCIE_DW
217 select PCIEPORTBUS
218 help
219 Say Y here to enable PCIe controller support on Qualcomm SoCs. The
220 PCIe controller uses the Designware core plus Qualcomm-specific
221 hardware wrappers.
500a1d9a 222
f12b76e5
DD
223config PCI_HOST_THUNDER_PEM
224 bool "Cavium Thunder PCIe controller to off-chip devices"
225 depends on OF && ARM64
226 select PCI_HOST_COMMON
227 help
228 Say Y here if you want PCIe support for CN88XX Cavium Thunder SoCs.
229
7b6e7ba8
DD
230config PCI_HOST_THUNDER_ECAM
231 bool "Cavium Thunder ECAM controller to on-chip devices on pass-1.x silicon"
232 depends on OF && ARM64
233 select PCI_HOST_COMMON
234 help
235 Say Y here if you want ECAM support for CN88XX-Pass-1.x Cavium Thunder SoCs.
236
1c52a513
TP
237config PCIE_ARMADA_8K
238 bool "Marvell Armada-8K PCIe controller"
239 depends on ARCH_MVEBU
240 select PCIE_DW
241 select PCIEPORTBUS
242 help
243 Say Y here if you want to enable PCIe controller support on
244 Armada-8K SoCs. The PCIe controller on Armada-8K is based on
245 Designware hardware and therefore the driver re-uses the
246 Designware core functions to implement the driver.
247
a3cbfae1
NC
248config PCIE_ARTPEC6
249 bool "Axis ARTPEC-6 PCIe controller"
250 depends on MACH_ARTPEC6
251 select PCIE_DW
252 select PCIEPORTBUS
253 help
254 Say Y here to enable PCIe controller support on Axis ARTPEC-6
255 SoCs. This PCIe controller uses the DesignWare core.
256
45361a4f 257endmenu