]>
Commit | Line | Data |
---|---|---|
45361a4f TP |
1 | menu "PCI host controller drivers" |
2 | depends on PCI | |
3 | ||
47ff3de9 KVA |
4 | config 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 |
13 | config 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 |
20 | config 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 |
30 | config 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 |
41 | config PCIE_DW |
42 | bool | |
43 | ||
44 | config PCI_EXYNOS | |
45 | bool "Samsung Exynos PCIe controller" | |
46 | depends on SOC_EXYNOS5440 | |
47 | select PCIEPORTBUS | |
48 | select PCIE_DW | |
49 | ||
bb38919e SC |
50 | config PCI_IMX6 |
51 | bool "Freescale i.MX6 PCIe controller" | |
52 | depends on SOC_IMX6Q | |
53 | select PCIEPORTBUS | |
54 | select PCIE_DW | |
55 | ||
d1523b52 TR |
56 | config 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 |
63 | config 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 | ||
c25da477 PE |
72 | config PCI_RCAR_GEN2_PCIE |
73 | bool "Renesas R-Car PCIe controller" | |
304e6d57 | 74 | depends on ARCH_RENESAS || (ARM && COMPILE_TEST) |
c25da477 PE |
75 | help |
76 | Say Y here if you want PCIe controller support on R-Car Gen2 SoCs. | |
77 | ||
4e64dbe2 DD |
78 | config PCI_HOST_COMMON |
79 | bool | |
80 | ||
ce292991 WD |
81 | config PCI_HOST_GENERIC |
82 | bool "Generic PCI host controller" | |
aa4a5c0d | 83 | depends on (ARM || ARM64) && OF |
4e64dbe2 | 84 | select PCI_HOST_COMMON |
ce292991 WD |
85 | help |
86 | Say Y here if you want to support a simple generic PCI host | |
87 | controller, such as the one emulated by kvmtool. | |
88 | ||
51b66a6c | 89 | config PCIE_SPEAR13XX |
8d7004a6 | 90 | bool "STMicroelectronics SPEAr PCIe controller" |
51b66a6c PA |
91 | depends on ARCH_SPEAR13XX |
92 | select PCIEPORTBUS | |
93 | select PCIE_DW | |
94 | help | |
95 | Say Y here if you want PCIe support on SPEAr13XX SoCs. | |
96 | ||
0c4ffcfe MK |
97 | config PCI_KEYSTONE |
98 | bool "TI Keystone PCIe controller" | |
99 | depends on ARCH_KEYSTONE | |
100 | select PCIE_DW | |
101 | select PCIEPORTBUS | |
102 | help | |
103 | Say Y here if you want to enable PCI controller support on Keystone | |
104 | SoCs. The PCI controller on Keystone is based on Designware hardware | |
105 | and therefore the driver re-uses the Designware core functions to | |
106 | implement the driver. | |
a2351efe | 107 | |
8961def5 ST |
108 | config PCIE_XILINX |
109 | bool "Xilinx AXI PCIe host bridge support" | |
01cf9d52 | 110 | depends on ARCH_ZYNQ || MICROBLAZE |
8961def5 ST |
111 | help |
112 | Say 'Y' here if you want kernel to support the Xilinx AXI PCIe | |
113 | Host Bridge driver. | |
114 | ||
5f6b6ccd TI |
115 | config PCI_XGENE |
116 | bool "X-Gene PCIe controller" | |
117 | depends on ARCH_XGENE | |
118 | depends on OF | |
119 | select PCIEPORTBUS | |
dcd19de3 | 120 | select PCI_MSI_IRQ_DOMAIN if PCI_MSI |
5f6b6ccd TI |
121 | help |
122 | Say Y here if you want internal PCI support on APM X-Gene SoC. | |
123 | There are 5 internal PCIe ports available. Each port is GEN3 capable | |
124 | and have varied lanes from x1 to x8. | |
125 | ||
dcd19de3 DD |
126 | config PCI_XGENE_MSI |
127 | bool "X-Gene v1 PCIe MSI feature" | |
128 | depends on PCI_XGENE && PCI_MSI | |
129 | default y | |
130 | help | |
131 | Say Y here if you want PCIe MSI support for the APM X-Gene v1 SoC. | |
132 | This MSI driver supports 5 PCIe ports on the APM X-Gene v1 SoC. | |
133 | ||
62d0ff83 ML |
134 | config PCI_LAYERSCAPE |
135 | bool "Freescale Layerscape PCIe controller" | |
5192ec7b | 136 | depends on OF && (ARM || ARCH_LAYERSCAPE) |
62d0ff83 ML |
137 | select PCIE_DW |
138 | select MFD_SYSCON | |
139 | help | |
140 | Say Y here if you want PCIe controller support on Layerscape SoCs. | |
141 | ||
b7e78170 RH |
142 | config PCI_VERSATILE |
143 | bool "ARM Versatile PB PCI controller" | |
144 | depends on ARCH_VERSATILE | |
145 | ||
1fb37a81 | 146 | config PCIE_IPROC |
c1b98e41 | 147 | tristate |
1fb37a81 RJ |
148 | help |
149 | This enables the iProc PCIe core controller support for Broadcom's | |
c1b98e41 AB |
150 | iProc family of SoCs. An appropriate bus interface driver needs |
151 | to be enabled to select this. | |
1fb37a81 RJ |
152 | |
153 | config PCIE_IPROC_PLATFORM | |
154 | tristate "Broadcom iProc PCIe platform bus driver" | |
155 | depends on ARCH_BCM_IPROC || (ARM && COMPILE_TEST) | |
156 | depends on OF | |
157 | select PCIE_IPROC | |
158 | default ARCH_BCM_IPROC | |
159 | help | |
160 | Say Y here if you want to use the Broadcom iProc PCIe controller | |
161 | through the generic platform bus interface | |
162 | ||
4785ffbd | 163 | config PCIE_IPROC_BCMA |
05aa7d6a | 164 | tristate "Broadcom iProc PCIe BCMA bus driver" |
70d334ca | 165 | depends on ARM && (ARCH_BCM_IPROC || COMPILE_TEST) |
4785ffbd HM |
166 | select PCIE_IPROC |
167 | select BCMA | |
168 | select PCI_DOMAINS | |
169 | default ARCH_BCM_5301X | |
170 | help | |
171 | Say Y here if you want to use the Broadcom iProc PCIe controller | |
172 | through the BCMA bus interface | |
173 | ||
3bc2b234 RJ |
174 | config PCIE_IPROC_MSI |
175 | bool "Broadcom iProc PCIe MSI support" | |
176 | depends on PCIE_IPROC_PLATFORM || PCIE_IPROC_BCMA | |
177 | depends on PCI_MSI | |
178 | select PCI_MSI_IRQ_DOMAIN | |
179 | default ARCH_BCM_IPROC | |
180 | help | |
181 | Say Y here if you want to enable MSI support for Broadcom's iProc | |
182 | PCIe controller | |
183 | ||
eaa6111b LFT |
184 | config PCIE_ALTERA |
185 | bool "Altera PCIe controller" | |
186 | depends on ARM || NIOS2 | |
187 | depends on OF_PCI | |
188 | select PCI_DOMAINS | |
189 | help | |
190 | Say Y here if you want to enable PCIe controller support on Altera | |
191 | FPGA. | |
192 | ||
af1169b4 LFT |
193 | config PCIE_ALTERA_MSI |
194 | bool "Altera PCIe MSI feature" | |
195 | depends on PCIE_ALTERA && PCI_MSI | |
196 | select PCI_MSI_IRQ_DOMAIN | |
197 | help | |
198 | Say Y here if you want PCIe MSI support for the Altera FPGA. | |
199 | This MSI driver supports Altera MSI to GIC controller IP. | |
200 | ||
500a1d9a ZW |
201 | config PCI_HISI |
202 | depends on OF && ARM64 | |
5930fe4e | 203 | bool "HiSilicon Hip05 and Hip06 SoCs PCIe controllers" |
500a1d9a ZW |
204 | select PCIEPORTBUS |
205 | select PCIE_DW | |
206 | help | |
5930fe4e GP |
207 | Say Y here if you want PCIe controller support on HiSilicon |
208 | Hip05 and Hip06 SoCs | |
500a1d9a | 209 | |
82a82383 SV |
210 | config PCIE_QCOM |
211 | bool "Qualcomm PCIe controller" | |
212 | depends on ARCH_QCOM && OF | |
213 | select PCIE_DW | |
214 | select PCIEPORTBUS | |
215 | help | |
216 | Say Y here to enable PCIe controller support on Qualcomm SoCs. The | |
217 | PCIe controller uses the Designware core plus Qualcomm-specific | |
218 | hardware wrappers. | |
500a1d9a | 219 | |
f12b76e5 DD |
220 | config PCI_HOST_THUNDER_PEM |
221 | bool "Cavium Thunder PCIe controller to off-chip devices" | |
222 | depends on OF && ARM64 | |
223 | select PCI_HOST_COMMON | |
224 | help | |
225 | Say Y here if you want PCIe support for CN88XX Cavium Thunder SoCs. | |
226 | ||
7b6e7ba8 DD |
227 | config PCI_HOST_THUNDER_ECAM |
228 | bool "Cavium Thunder ECAM controller to on-chip devices on pass-1.x silicon" | |
229 | depends on OF && ARM64 | |
230 | select PCI_HOST_COMMON | |
231 | help | |
232 | Say Y here if you want ECAM support for CN88XX-Pass-1.x Cavium Thunder SoCs. | |
233 | ||
45361a4f | 234 | endmenu |