Linux Audio

Check our new training course

Loading...
v5.14.15
  1# SPDX-License-Identifier: GPL-2.0
  2
  3menu "PCI controller drivers"
  4	depends on PCI
  5
  6config PCI_MVEBU
  7	bool "Marvell EBU PCIe controller"
  8	depends on ARCH_MVEBU || ARCH_DOVE || COMPILE_TEST
  9	depends on MVEBU_MBUS
 10	depends on ARM
 11	depends on OF
 12	select PCI_BRIDGE_EMUL
 
 
 
 
 13
 14config PCI_AARDVARK
 15	tristate "Aardvark PCIe controller"
 16	depends on (ARCH_MVEBU && ARM64) || COMPILE_TEST
 17	depends on OF
 18	depends on PCI_MSI_IRQ_DOMAIN
 19	select PCI_BRIDGE_EMUL
 20	help
 21	 Add support for Aardvark 64bit PCIe Host Controller. This
 22	 controller is part of the South Bridge of the Marvel Armada
 23	 3700 SoC.
 24
 25config PCIE_XILINX_NWL
 26	bool "NWL PCIe Core"
 27	depends on ARCH_ZYNQMP || COMPILE_TEST
 28	depends on PCI_MSI_IRQ_DOMAIN
 29	help
 30	 Say 'Y' here if you want kernel support for Xilinx
 31	 NWL PCIe controller. The controller can act as Root Port
 32	 or End Point. The current option selection will only
 33	 support root port enabling.
 34
 35config PCI_FTPCI100
 36	bool "Faraday Technology FTPCI100 PCI controller"
 37	depends on OF
 38	default ARCH_GEMINI
 39
 40config PCI_IXP4XX
 41	bool "Intel IXP4xx PCI controller"
 42	depends on ARM && OF
 43	depends on ARCH_IXP4XX || COMPILE_TEST
 44	default ARCH_IXP4XX
 45	help
 46	  Say Y here if you want support for the PCI host controller found
 47	  in the Intel IXP4xx XScale-based network processor SoC.
 48
 49config PCI_TEGRA
 50	bool "NVIDIA Tegra PCIe controller"
 51	depends on ARCH_TEGRA || COMPILE_TEST
 52	depends on PCI_MSI_IRQ_DOMAIN
 53	help
 54	  Say Y here if you want support for the PCIe host controller found
 55	  on NVIDIA Tegra SoCs.
 56
 57config PCI_RCAR_GEN2
 58	bool "Renesas R-Car Gen2 Internal PCI controller"
 59	depends on ARCH_RENESAS || COMPILE_TEST
 60	depends on ARM
 61	help
 62	  Say Y here if you want internal PCI support on R-Car Gen2 SoC.
 63	  There are 3 internal PCI controllers available with a single
 64	  built-in EHCI/OHCI host controller present on each one.
 65
 66config PCIE_RCAR_HOST
 67	bool "Renesas R-Car PCIe host controller"
 68	depends on ARCH_RENESAS || COMPILE_TEST
 69	depends on PCI_MSI_IRQ_DOMAIN
 70	help
 71	  Say Y here if you want PCIe controller support on R-Car SoCs in host
 72	  mode.
 73
 74config PCIE_RCAR_EP
 75	bool "Renesas R-Car PCIe endpoint controller"
 76	depends on ARCH_RENESAS || COMPILE_TEST
 77	depends on PCI_ENDPOINT
 78	help
 79	  Say Y here if you want PCIe controller support on R-Car SoCs in
 80	  endpoint mode.
 81
 82config PCI_HOST_COMMON
 83	tristate
 84	select PCI_ECAM
 85
 86config PCI_HOST_GENERIC
 87	tristate "Generic PCI host controller"
 88	depends on OF
 89	select PCI_HOST_COMMON
 90	select IRQ_DOMAIN
 91	help
 92	  Say Y here if you want to support a simple generic PCI host
 93	  controller, such as the one emulated by kvmtool.
 94
 95config PCIE_XILINX
 96	bool "Xilinx AXI PCIe host bridge support"
 97	depends on OF || COMPILE_TEST
 98	depends on PCI_MSI_IRQ_DOMAIN
 99	help
100	  Say 'Y' here if you want kernel to support the Xilinx AXI PCIe
101	  Host Bridge driver.
102
103config PCIE_XILINX_CPM
104	bool "Xilinx Versal CPM host bridge support"
105	depends on ARCH_ZYNQMP || COMPILE_TEST
106	select PCI_HOST_COMMON
107	help
108	  Say 'Y' here if you want kernel support for the
109	  Xilinx Versal CPM host bridge.
110
111config PCI_XGENE
112	bool "X-Gene PCIe controller"
113	depends on ARM64 || COMPILE_TEST
114	depends on OF || (ACPI && PCI_QUIRKS)
115	help
116	  Say Y here if you want internal PCI support on APM X-Gene SoC.
117	  There are 5 internal PCIe ports available. Each port is GEN3 capable
118	  and have varied lanes from x1 to x8.
119
120config PCI_XGENE_MSI
121	bool "X-Gene v1 PCIe MSI feature"
122	depends on PCI_XGENE
123	depends on PCI_MSI_IRQ_DOMAIN
124	default y
125	help
126	  Say Y here if you want PCIe MSI support for the APM X-Gene v1 SoC.
127	  This MSI driver supports 5 PCIe ports on the APM X-Gene v1 SoC.
128
129config PCI_V3_SEMI
130	bool "V3 Semiconductor PCI controller"
131	depends on OF
132	depends on ARM || COMPILE_TEST
133	default ARCH_INTEGRATOR_AP
134
135config PCI_VERSATILE
136	bool "ARM Versatile PB PCI controller"
137	depends on ARCH_VERSATILE || COMPILE_TEST
138
139config PCIE_IPROC
140	tristate
141	help
142	  This enables the iProc PCIe core controller support for Broadcom's
143	  iProc family of SoCs. An appropriate bus interface driver needs
144	  to be enabled to select this.
145
146config PCIE_IPROC_PLATFORM
147	tristate "Broadcom iProc PCIe platform bus driver"
148	depends on ARCH_BCM_IPROC || (ARM && COMPILE_TEST)
149	depends on OF
150	select PCIE_IPROC
151	default ARCH_BCM_IPROC
152	help
153	  Say Y here if you want to use the Broadcom iProc PCIe controller
154	  through the generic platform bus interface
155
156config PCIE_IPROC_BCMA
157	tristate "Broadcom iProc PCIe BCMA bus driver"
158	depends on ARM && (ARCH_BCM_IPROC || COMPILE_TEST)
159	select PCIE_IPROC
160	select BCMA
161	default ARCH_BCM_5301X
162	help
163	  Say Y here if you want to use the Broadcom iProc PCIe controller
164	  through the BCMA bus interface
165
166config PCIE_IPROC_MSI
167	bool "Broadcom iProc PCIe MSI support"
168	depends on PCIE_IPROC_PLATFORM || PCIE_IPROC_BCMA
169	depends on PCI_MSI_IRQ_DOMAIN
170	default ARCH_BCM_IPROC
171	help
172	  Say Y here if you want to enable MSI support for Broadcom's iProc
173	  PCIe controller
174
175config PCIE_ALTERA
176	tristate "Altera PCIe controller"
177	depends on ARM || NIOS2 || ARM64 || COMPILE_TEST
178	help
179	  Say Y here if you want to enable PCIe controller support on Altera
180	  FPGA.
181
182config PCIE_ALTERA_MSI
183	tristate "Altera PCIe MSI feature"
184	depends on PCIE_ALTERA
185	depends on PCI_MSI_IRQ_DOMAIN
186	help
187	  Say Y here if you want PCIe MSI support for the Altera FPGA.
188	  This MSI driver supports Altera MSI to GIC controller IP.
189
190config PCI_HOST_THUNDER_PEM
191	bool "Cavium Thunder PCIe controller to off-chip devices"
192	depends on ARM64 || COMPILE_TEST
193	depends on OF || (ACPI && PCI_QUIRKS)
194	select PCI_HOST_COMMON
195	help
196	  Say Y here if you want PCIe support for CN88XX Cavium Thunder SoCs.
197
198config PCI_HOST_THUNDER_ECAM
199	bool "Cavium Thunder ECAM controller to on-chip devices on pass-1.x silicon"
200	depends on ARM64 || COMPILE_TEST
201	depends on OF || (ACPI && PCI_QUIRKS)
202	select PCI_HOST_COMMON
203	help
204	  Say Y here if you want ECAM support for CN88XX-Pass-1.x Cavium Thunder SoCs.
205
206config PCIE_ROCKCHIP
207	bool
208	depends on PCI
209
210config PCIE_ROCKCHIP_HOST
211	tristate "Rockchip PCIe host controller"
212	depends on ARCH_ROCKCHIP || COMPILE_TEST
213	depends on OF
214	depends on PCI_MSI_IRQ_DOMAIN
215	select MFD_SYSCON
216	select PCIE_ROCKCHIP
217	help
218	  Say Y here if you want internal PCI support on Rockchip SoC.
219	  There is 1 internal PCIe port available to support GEN2 with
220	  4 slots.
221
222config PCIE_ROCKCHIP_EP
223	bool "Rockchip PCIe endpoint controller"
224	depends on ARCH_ROCKCHIP || COMPILE_TEST
225	depends on OF
226	depends on PCI_ENDPOINT
227	select MFD_SYSCON
228	select PCIE_ROCKCHIP
229	help
230	  Say Y here if you want to support Rockchip PCIe controller in
231	  endpoint mode on Rockchip SoC. There is 1 internal PCIe port
232	  available to support GEN2 with 4 slots.
233
234config PCIE_MEDIATEK
235	tristate "MediaTek PCIe controller"
236	depends on ARCH_MEDIATEK || COMPILE_TEST
237	depends on OF
238	depends on PCI_MSI_IRQ_DOMAIN
239	help
240	  Say Y here if you want to enable PCIe controller support on
241	  MediaTek SoCs.
242
243config PCIE_MEDIATEK_GEN3
244	tristate "MediaTek Gen3 PCIe controller"
245	depends on ARCH_MEDIATEK || COMPILE_TEST
246	depends on PCI_MSI_IRQ_DOMAIN
247	help
248	  Adds support for PCIe Gen3 MAC controller for MediaTek SoCs.
249	  This PCIe controller is compatible with Gen3, Gen2 and Gen1 speed,
250	  and support up to 256 MSI interrupt numbers for
251	  multi-function devices.
252
253	  Say Y here if you want to enable Gen3 PCIe controller support on
254	  MediaTek SoCs.
255
256config VMD
257	depends on PCI_MSI && X86_64 && SRCU
258	tristate "Intel Volume Management Device Driver"
259	help
260	  Adds support for the Intel Volume Management Device (VMD). VMD is a
261	  secondary PCI host bridge that allows PCI Express root ports,
262	  and devices attached to them, to be removed from the default
263	  PCI domain and placed within the VMD domain. This provides
264	  more bus resources than are otherwise possible with a
265	  single domain. If you know your system provides one of these and
266	  has devices attached to it, say Y; if you are not sure, say N.
267
268	  To compile this driver as a module, choose M here: the
269	  module will be called vmd.
270
271config PCIE_BRCMSTB
272	tristate "Broadcom Brcmstb PCIe host controller"
273	depends on ARCH_BRCMSTB || ARCH_BCM2835 || ARCH_BCM4908 || COMPILE_TEST
 
274	depends on OF
275	depends on PCI_MSI_IRQ_DOMAIN
276	default ARCH_BRCMSTB
277	help
278	  Say Y here to enable PCIe host controller support for
279	  Broadcom STB based SoCs, like the Raspberry Pi 4.
280
281config PCI_HYPERV_INTERFACE
282	tristate "Hyper-V PCI Interface"
283	depends on X86 && HYPERV && PCI_MSI && PCI_MSI_IRQ_DOMAIN && X86_64
284	help
285	  The Hyper-V PCI Interface is a helper driver allows other drivers to
286	  have a common interface with the Hyper-V PCI frontend driver.
287
288config PCI_LOONGSON
289	bool "LOONGSON PCI Controller"
290	depends on MACH_LOONGSON64 || COMPILE_TEST
291	depends on OF
292	depends on PCI_QUIRKS
293	default MACH_LOONGSON64
294	help
295	  Say Y here if you want to enable PCI controller support on
296	  Loongson systems.
297
298config PCIE_MICROCHIP_HOST
299	bool "Microchip AXI PCIe host bridge support"
300	depends on PCI_MSI && OF
301	select PCI_MSI_IRQ_DOMAIN
302	select GENERIC_MSI_IRQ_DOMAIN
303	select PCI_HOST_COMMON
304	help
305	  Say Y here if you want kernel to support the Microchip AXI PCIe
306	  Host Bridge driver.
307
308config PCIE_HISI_ERR
309	depends on ACPI_APEI_GHES && (ARM64 || COMPILE_TEST)
310	bool "HiSilicon HIP PCIe controller error handling driver"
311	help
312	  Say Y here if you want error handling support
313	  for the PCIe controller's errors on HiSilicon HIP SoCs
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
314
315source "drivers/pci/controller/dwc/Kconfig"
316source "drivers/pci/controller/mobiveil/Kconfig"
317source "drivers/pci/controller/cadence/Kconfig"
318endmenu
v6.2
  1# SPDX-License-Identifier: GPL-2.0
  2
  3menu "PCI controller drivers"
  4	depends on PCI
  5
  6config PCI_MVEBU
  7	tristate "Marvell EBU PCIe controller"
  8	depends on ARCH_MVEBU || ARCH_DOVE || COMPILE_TEST
  9	depends on MVEBU_MBUS
 10	depends on ARM
 11	depends on OF
 12	select PCI_BRIDGE_EMUL
 13	help
 14	 Add support for Marvell EBU PCIe controller. This PCIe controller
 15	 is used on 32-bit Marvell ARM SoCs: Dove, Kirkwood, Armada 370,
 16	 Armada XP, Armada 375, Armada 38x and Armada 39x.
 17
 18config PCI_AARDVARK
 19	tristate "Aardvark PCIe controller"
 20	depends on (ARCH_MVEBU && ARM64) || COMPILE_TEST
 21	depends on OF
 22	depends on PCI_MSI
 23	select PCI_BRIDGE_EMUL
 24	help
 25	 Add support for Aardvark 64bit PCIe Host Controller. This
 26	 controller is part of the South Bridge of the Marvel Armada
 27	 3700 SoC.
 28
 29config PCIE_XILINX_NWL
 30	bool "NWL PCIe Core"
 31	depends on ARCH_ZYNQMP || COMPILE_TEST
 32	depends on PCI_MSI
 33	help
 34	 Say 'Y' here if you want kernel support for Xilinx
 35	 NWL PCIe controller. The controller can act as Root Port
 36	 or End Point. The current option selection will only
 37	 support root port enabling.
 38
 39config PCI_FTPCI100
 40	bool "Faraday Technology FTPCI100 PCI controller"
 41	depends on OF
 42	default ARCH_GEMINI
 43
 44config PCI_IXP4XX
 45	bool "Intel IXP4xx PCI controller"
 46	depends on ARM && OF
 47	depends on ARCH_IXP4XX || COMPILE_TEST
 48	default ARCH_IXP4XX
 49	help
 50	  Say Y here if you want support for the PCI host controller found
 51	  in the Intel IXP4xx XScale-based network processor SoC.
 52
 53config PCI_TEGRA
 54	bool "NVIDIA Tegra PCIe controller"
 55	depends on ARCH_TEGRA || COMPILE_TEST
 56	depends on PCI_MSI
 57	help
 58	  Say Y here if you want support for the PCIe host controller found
 59	  on NVIDIA Tegra SoCs.
 60
 61config PCI_RCAR_GEN2
 62	bool "Renesas R-Car Gen2 Internal PCI controller"
 63	depends on ARCH_RENESAS || COMPILE_TEST
 64	depends on ARM
 65	help
 66	  Say Y here if you want internal PCI support on R-Car Gen2 SoC.
 67	  There are 3 internal PCI controllers available with a single
 68	  built-in EHCI/OHCI host controller present on each one.
 69
 70config PCIE_RCAR_HOST
 71	bool "Renesas R-Car PCIe host controller"
 72	depends on ARCH_RENESAS || COMPILE_TEST
 73	depends on PCI_MSI
 74	help
 75	  Say Y here if you want PCIe controller support on R-Car SoCs in host
 76	  mode.
 77
 78config PCIE_RCAR_EP
 79	bool "Renesas R-Car PCIe endpoint controller"
 80	depends on ARCH_RENESAS || COMPILE_TEST
 81	depends on PCI_ENDPOINT
 82	help
 83	  Say Y here if you want PCIe controller support on R-Car SoCs in
 84	  endpoint mode.
 85
 86config PCI_HOST_COMMON
 87	tristate
 88	select PCI_ECAM
 89
 90config PCI_HOST_GENERIC
 91	tristate "Generic PCI host controller"
 92	depends on OF
 93	select PCI_HOST_COMMON
 94	select IRQ_DOMAIN
 95	help
 96	  Say Y here if you want to support a simple generic PCI host
 97	  controller, such as the one emulated by kvmtool.
 98
 99config PCIE_XILINX
100	bool "Xilinx AXI PCIe host bridge support"
101	depends on OF || COMPILE_TEST
102	depends on PCI_MSI
103	help
104	  Say 'Y' here if you want kernel to support the Xilinx AXI PCIe
105	  Host Bridge driver.
106
107config PCIE_XILINX_CPM
108	bool "Xilinx Versal CPM host bridge support"
109	depends on ARCH_ZYNQMP || COMPILE_TEST
110	select PCI_HOST_COMMON
111	help
112	  Say 'Y' here if you want kernel support for the
113	  Xilinx Versal CPM host bridge.
114
115config PCI_XGENE
116	bool "X-Gene PCIe controller"
117	depends on ARM64 || COMPILE_TEST
118	depends on OF || (ACPI && PCI_QUIRKS)
119	help
120	  Say Y here if you want internal PCI support on APM X-Gene SoC.
121	  There are 5 internal PCIe ports available. Each port is GEN3 capable
122	  and have varied lanes from x1 to x8.
123
124config PCI_XGENE_MSI
125	bool "X-Gene v1 PCIe MSI feature"
126	depends on PCI_XGENE
127	depends on PCI_MSI
128	default y
129	help
130	  Say Y here if you want PCIe MSI support for the APM X-Gene v1 SoC.
131	  This MSI driver supports 5 PCIe ports on the APM X-Gene v1 SoC.
132
133config PCI_V3_SEMI
134	bool "V3 Semiconductor PCI controller"
135	depends on OF
136	depends on ARM || COMPILE_TEST
137	default ARCH_INTEGRATOR_AP
138
139config PCI_VERSATILE
140	bool "ARM Versatile PB PCI controller"
141	depends on ARCH_VERSATILE || COMPILE_TEST
142
143config PCIE_IPROC
144	tristate
145	help
146	  This enables the iProc PCIe core controller support for Broadcom's
147	  iProc family of SoCs. An appropriate bus interface driver needs
148	  to be enabled to select this.
149
150config PCIE_IPROC_PLATFORM
151	tristate "Broadcom iProc PCIe platform bus driver"
152	depends on ARCH_BCM_IPROC || (ARM && COMPILE_TEST)
153	depends on OF
154	select PCIE_IPROC
155	default ARCH_BCM_IPROC
156	help
157	  Say Y here if you want to use the Broadcom iProc PCIe controller
158	  through the generic platform bus interface
159
160config PCIE_IPROC_BCMA
161	tristate "Broadcom iProc PCIe BCMA bus driver"
162	depends on ARM && (ARCH_BCM_IPROC || COMPILE_TEST)
163	select PCIE_IPROC
164	select BCMA
165	default ARCH_BCM_5301X
166	help
167	  Say Y here if you want to use the Broadcom iProc PCIe controller
168	  through the BCMA bus interface
169
170config PCIE_IPROC_MSI
171	bool "Broadcom iProc PCIe MSI support"
172	depends on PCIE_IPROC_PLATFORM || PCIE_IPROC_BCMA
173	depends on PCI_MSI
174	default ARCH_BCM_IPROC
175	help
176	  Say Y here if you want to enable MSI support for Broadcom's iProc
177	  PCIe controller
178
179config PCIE_ALTERA
180	tristate "Altera PCIe controller"
181	depends on ARM || NIOS2 || ARM64 || COMPILE_TEST
182	help
183	  Say Y here if you want to enable PCIe controller support on Altera
184	  FPGA.
185
186config PCIE_ALTERA_MSI
187	tristate "Altera PCIe MSI feature"
188	depends on PCIE_ALTERA
189	depends on PCI_MSI
190	help
191	  Say Y here if you want PCIe MSI support for the Altera FPGA.
192	  This MSI driver supports Altera MSI to GIC controller IP.
193
194config PCI_HOST_THUNDER_PEM
195	bool "Cavium Thunder PCIe controller to off-chip devices"
196	depends on ARM64 || COMPILE_TEST
197	depends on OF || (ACPI && PCI_QUIRKS)
198	select PCI_HOST_COMMON
199	help
200	  Say Y here if you want PCIe support for CN88XX Cavium Thunder SoCs.
201
202config PCI_HOST_THUNDER_ECAM
203	bool "Cavium Thunder ECAM controller to on-chip devices on pass-1.x silicon"
204	depends on ARM64 || COMPILE_TEST
205	depends on OF || (ACPI && PCI_QUIRKS)
206	select PCI_HOST_COMMON
207	help
208	  Say Y here if you want ECAM support for CN88XX-Pass-1.x Cavium Thunder SoCs.
209
210config PCIE_ROCKCHIP
211	bool
212	depends on PCI
213
214config PCIE_ROCKCHIP_HOST
215	tristate "Rockchip PCIe host controller"
216	depends on ARCH_ROCKCHIP || COMPILE_TEST
217	depends on OF
218	depends on PCI_MSI
219	select MFD_SYSCON
220	select PCIE_ROCKCHIP
221	help
222	  Say Y here if you want internal PCI support on Rockchip SoC.
223	  There is 1 internal PCIe port available to support GEN2 with
224	  4 slots.
225
226config PCIE_ROCKCHIP_EP
227	bool "Rockchip PCIe endpoint controller"
228	depends on ARCH_ROCKCHIP || COMPILE_TEST
229	depends on OF
230	depends on PCI_ENDPOINT
231	select MFD_SYSCON
232	select PCIE_ROCKCHIP
233	help
234	  Say Y here if you want to support Rockchip PCIe controller in
235	  endpoint mode on Rockchip SoC. There is 1 internal PCIe port
236	  available to support GEN2 with 4 slots.
237
238config PCIE_MEDIATEK
239	tristate "MediaTek PCIe controller"
240	depends on ARCH_AIROHA || ARCH_MEDIATEK || COMPILE_TEST
241	depends on OF
242	depends on PCI_MSI
243	help
244	  Say Y here if you want to enable PCIe controller support on
245	  MediaTek SoCs.
246
247config PCIE_MEDIATEK_GEN3
248	tristate "MediaTek Gen3 PCIe controller"
249	depends on ARCH_MEDIATEK || COMPILE_TEST
250	depends on PCI_MSI
251	help
252	  Adds support for PCIe Gen3 MAC controller for MediaTek SoCs.
253	  This PCIe controller is compatible with Gen3, Gen2 and Gen1 speed,
254	  and support up to 256 MSI interrupt numbers for
255	  multi-function devices.
256
257	  Say Y here if you want to enable Gen3 PCIe controller support on
258	  MediaTek SoCs.
259
260config VMD
261	depends on PCI_MSI && X86_64 && SRCU && !UML
262	tristate "Intel Volume Management Device Driver"
263	help
264	  Adds support for the Intel Volume Management Device (VMD). VMD is a
265	  secondary PCI host bridge that allows PCI Express root ports,
266	  and devices attached to them, to be removed from the default
267	  PCI domain and placed within the VMD domain. This provides
268	  more bus resources than are otherwise possible with a
269	  single domain. If you know your system provides one of these and
270	  has devices attached to it, say Y; if you are not sure, say N.
271
272	  To compile this driver as a module, choose M here: the
273	  module will be called vmd.
274
275config PCIE_BRCMSTB
276	tristate "Broadcom Brcmstb PCIe host controller"
277	depends on ARCH_BRCMSTB || ARCH_BCM2835 || ARCH_BCMBCA || \
278		   BMIPS_GENERIC || COMPILE_TEST
279	depends on OF
280	depends on PCI_MSI
281	default ARCH_BRCMSTB || BMIPS_GENERIC
282	help
283	  Say Y here to enable PCIe host controller support for
284	  Broadcom STB based SoCs, like the Raspberry Pi 4.
285
286config PCI_HYPERV_INTERFACE
287	tristate "Hyper-V PCI Interface"
288	depends on ((X86 && X86_64) || ARM64) && HYPERV && PCI_MSI && PCI_MSI
289	help
290	  The Hyper-V PCI Interface is a helper driver allows other drivers to
291	  have a common interface with the Hyper-V PCI frontend driver.
292
293config PCI_LOONGSON
294	bool "LOONGSON PCI Controller"
295	depends on MACH_LOONGSON64 || COMPILE_TEST
296	depends on OF || ACPI
297	depends on PCI_QUIRKS
298	default MACH_LOONGSON64
299	help
300	  Say Y here if you want to enable PCI controller support on
301	  Loongson systems.
302
303config PCIE_MICROCHIP_HOST
304	bool "Microchip AXI PCIe host bridge support"
305	depends on PCI_MSI && OF
 
 
306	select PCI_HOST_COMMON
307	help
308	  Say Y here if you want kernel to support the Microchip AXI PCIe
309	  Host Bridge driver.
310
311config PCIE_HISI_ERR
312	depends on ACPI_APEI_GHES && (ARM64 || COMPILE_TEST)
313	bool "HiSilicon HIP PCIe controller error handling driver"
314	help
315	  Say Y here if you want error handling support
316	  for the PCIe controller's errors on HiSilicon HIP SoCs
317
318config PCIE_APPLE_MSI_DOORBELL_ADDR
319	hex
320	default 0xfffff000
321	depends on PCIE_APPLE
322
323config PCIE_APPLE
324	tristate "Apple PCIe controller"
325	depends on ARCH_APPLE || COMPILE_TEST
326	depends on OF
327	depends on PCI_MSI
328	select PCI_HOST_COMMON
329	help
330	  Say Y here if you want to enable PCIe controller support on Apple
331	  system-on-chips, like the Apple M1. This is required for the USB
332	  type-A ports, Ethernet, Wi-Fi, and Bluetooth.
333
334	  If unsure, say Y if you have an Apple Silicon system.
335
336config PCIE_MT7621
337	tristate "MediaTek MT7621 PCIe Controller"
338	depends on SOC_MT7621 || COMPILE_TEST
339	select PHY_MT7621_PCI
340	default SOC_MT7621
341	help
342	  This selects a driver for the MediaTek MT7621 PCIe Controller.
343
344source "drivers/pci/controller/dwc/Kconfig"
345source "drivers/pci/controller/mobiveil/Kconfig"
346source "drivers/pci/controller/cadence/Kconfig"
347endmenu