brintos

brintos / linux-shallow public Read only

0
0
Text · 10.3 KiB · 9800b76 Raw
353 lines · plain
1# SPDX-License-Identifier: GPL-2.02 3menu "PCI controller drivers"4	depends on PCI5 6config PCI_AARDVARK7	tristate "Aardvark PCIe controller"8	depends on (ARCH_MVEBU && ARM64) || COMPILE_TEST9	depends on OF10	depends on PCI_MSI11	select PCI_BRIDGE_EMUL12	help13	 Add support for Aardvark 64bit PCIe Host Controller. This14	 controller is part of the South Bridge of the Marvel Armada15	 3700 SoC.16 17config PCIE_ALTERA18	tristate "Altera PCIe controller"19	depends on ARM || NIOS2 || ARM64 || COMPILE_TEST20	help21	  Say Y here if you want to enable PCIe controller support on Altera22	  FPGA.23 24config PCIE_ALTERA_MSI25	tristate "Altera PCIe MSI feature"26	depends on PCIE_ALTERA27	depends on PCI_MSI28	help29	  Say Y here if you want PCIe MSI support for the Altera FPGA.30	  This MSI driver supports Altera MSI to GIC controller IP.31 32config PCIE_APPLE_MSI_DOORBELL_ADDR33	hex34	default 0xfffff00035	depends on PCIE_APPLE36 37config PCIE_APPLE38	tristate "Apple PCIe controller"39	depends on ARCH_APPLE || COMPILE_TEST40	depends on OF41	depends on PCI_MSI42	select PCI_HOST_COMMON43	help44	  Say Y here if you want to enable PCIe controller support on Apple45	  system-on-chips, like the Apple M1. This is required for the USB46	  type-A ports, Ethernet, Wi-Fi, and Bluetooth.47 48	  If unsure, say Y if you have an Apple Silicon system.49 50config PCI_VERSATILE51	bool "ARM Versatile PB PCI controller"52	depends on ARCH_VERSATILE || COMPILE_TEST53 54config PCIE_BRCMSTB55	tristate "Broadcom Brcmstb PCIe controller"56	depends on ARCH_BRCMSTB || ARCH_BCM2835 || ARCH_BCMBCA || \57		   BMIPS_GENERIC || COMPILE_TEST58	depends on OF59	depends on PCI_MSI60	default ARCH_BRCMSTB || BMIPS_GENERIC61	help62	  Say Y here to enable PCIe host controller support for63	  Broadcom STB based SoCs, like the Raspberry Pi 4.64 65config PCIE_IPROC66	tristate67	help68	  This enables the iProc PCIe core controller support for Broadcom's69	  iProc family of SoCs. An appropriate bus interface driver needs70	  to be enabled to select this.71 72config PCIE_IPROC_PLATFORM73	tristate "Broadcom iProc PCIe platform bus driver"74	depends on ARCH_BCM_IPROC || (ARM && COMPILE_TEST)75	depends on OF76	select PCIE_IPROC77	default ARCH_BCM_IPROC78	help79	  Say Y here if you want to use the Broadcom iProc PCIe controller80	  through the generic platform bus interface81 82config PCIE_IPROC_BCMA83	tristate "Broadcom iProc BCMA PCIe controller"84	depends on ARM && (ARCH_BCM_IPROC || COMPILE_TEST)85	select PCIE_IPROC86	select BCMA87	default ARCH_BCM_5301X88	help89	  Say Y here if you want to use the Broadcom iProc PCIe controller90	  through the BCMA bus interface91 92config PCIE_IPROC_MSI93	bool "Broadcom iProc PCIe MSI support"94	depends on PCIE_IPROC_PLATFORM || PCIE_IPROC_BCMA95	depends on PCI_MSI96	default ARCH_BCM_IPROC97	help98	  Say Y here if you want to enable MSI support for Broadcom's iProc99	  PCIe controller100 101config PCI_HOST_THUNDER_PEM102	bool "Cavium Thunder PCIe controller to off-chip devices"103	depends on ARM64 || COMPILE_TEST104	depends on OF || (ACPI && PCI_QUIRKS)105	select PCI_HOST_COMMON106	help107	  Say Y here if you want PCIe support for CN88XX Cavium Thunder SoCs.108 109config PCI_HOST_THUNDER_ECAM110	bool "Cavium Thunder ECAM controller to on-chip devices on pass-1.x silicon"111	depends on ARM64 || COMPILE_TEST112	depends on OF || (ACPI && PCI_QUIRKS)113	select PCI_HOST_COMMON114	help115	  Say Y here if you want ECAM support for CN88XX-Pass-1.x Cavium Thunder SoCs.116 117config PCI_FTPCI100118	bool "Faraday Technology FTPCI100 PCI controller"119	depends on OF120	default ARCH_GEMINI121 122config PCI_HOST_COMMON123	tristate124	select PCI_ECAM125 126config PCI_HOST_GENERIC127	tristate "Generic PCI host controller"128	depends on OF129	select PCI_HOST_COMMON130	select IRQ_DOMAIN131	help132	  Say Y here if you want to support a simple generic PCI host133	  controller, such as the one emulated by kvmtool.134 135config PCIE_HISI_ERR136	depends on ACPI_APEI_GHES && (ARM64 || COMPILE_TEST)137	bool "HiSilicon HIP PCIe controller error handling driver"138	help139	  Say Y here if you want error handling support140	  for the PCIe controller's errors on HiSilicon HIP SoCs141 142config PCI_IXP4XX143	bool "Intel IXP4xx PCI controller"144	depends on ARM && OF145	depends on ARCH_IXP4XX || COMPILE_TEST146	default ARCH_IXP4XX147	help148	  Say Y here if you want support for the PCI host controller found149	  in the Intel IXP4xx XScale-based network processor SoC.150 151config VMD152	depends on PCI_MSI && X86_64 && !UML153	tristate "Intel Volume Management Device Driver"154	help155	  Adds support for the Intel Volume Management Device (VMD). VMD is a156	  secondary PCI host bridge that allows PCI Express root ports,157	  and devices attached to them, to be removed from the default158	  PCI domain and placed within the VMD domain. This provides159	  more bus resources than are otherwise possible with a160	  single domain. If you know your system provides one of these and161	  has devices attached to it, say Y; if you are not sure, say N.162 163	  To compile this driver as a module, choose M here: the164	  module will be called vmd.165 166config PCI_LOONGSON167	bool "LOONGSON PCIe controller"168	depends on MACH_LOONGSON64 || COMPILE_TEST169	depends on OF || ACPI170	depends on PCI_QUIRKS171	default MACH_LOONGSON64172	help173	  Say Y here if you want to enable PCI controller support on174	  Loongson systems.175 176config PCI_MVEBU177	tristate "Marvell EBU PCIe controller"178	depends on ARCH_MVEBU || ARCH_DOVE || COMPILE_TEST179	depends on MVEBU_MBUS180	depends on ARM181	depends on OF182	select PCI_BRIDGE_EMUL183	help184	 Add support for Marvell EBU PCIe controller. This PCIe controller185	 is used on 32-bit Marvell ARM SoCs: Dove, Kirkwood, Armada 370,186	 Armada XP, Armada 375, Armada 38x and Armada 39x.187 188config PCIE_MEDIATEK189	tristate "MediaTek PCIe controller"190	depends on ARCH_AIROHA || ARCH_MEDIATEK || COMPILE_TEST191	depends on OF192	depends on PCI_MSI193	help194	  Say Y here if you want to enable PCIe controller support on195	  MediaTek SoCs.196 197config PCIE_MEDIATEK_GEN3198	tristate "MediaTek Gen3 PCIe controller"199	depends on ARCH_AIROHA || ARCH_MEDIATEK || COMPILE_TEST200	depends on PCI_MSI201	help202	  Adds support for PCIe Gen3 MAC controller for MediaTek SoCs.203	  This PCIe controller is compatible with Gen3, Gen2 and Gen1 speed,204	  and support up to 256 MSI interrupt numbers for205	  multi-function devices.206 207	  Say Y here if you want to enable Gen3 PCIe controller support on208	  MediaTek SoCs.209 210config PCIE_MT7621211	tristate "MediaTek MT7621 PCIe controller"212	depends on SOC_MT7621 || COMPILE_TEST213	select PHY_MT7621_PCI214	default SOC_MT7621215	help216	  This selects a driver for the MediaTek MT7621 PCIe Controller.217 218config PCI_HYPERV_INTERFACE219	tristate "Microsoft Hyper-V PCI Interface"220	depends on ((X86 && X86_64) || ARM64) && HYPERV && PCI_MSI221	help222	  The Hyper-V PCI Interface is a helper driver that allows other223	  drivers to have a common interface with the Hyper-V PCI frontend224	  driver.225 226config PCI_TEGRA227	bool "NVIDIA Tegra PCIe controller"228	depends on ARCH_TEGRA || COMPILE_TEST229	depends on PCI_MSI230	help231	  Say Y here if you want support for the PCIe host controller found232	  on NVIDIA Tegra SoCs.233 234config PCIE_RCAR_HOST235	bool "Renesas R-Car PCIe controller (host mode)"236	depends on ARCH_RENESAS || COMPILE_TEST237	depends on PCI_MSI238	help239	  Say Y here if you want PCIe controller support on R-Car SoCs in host240	  mode.241 242config PCIE_RCAR_EP243	bool "Renesas R-Car PCIe controller (endpoint mode)"244	depends on ARCH_RENESAS || COMPILE_TEST245	depends on PCI_ENDPOINT246	help247	  Say Y here if you want PCIe controller support on R-Car SoCs in248	  endpoint mode.249 250config PCI_RCAR_GEN2251	bool "Renesas R-Car Gen2 Internal PCI controller"252	depends on ARCH_RENESAS || COMPILE_TEST253	depends on ARM254	help255	  Say Y here if you want internal PCI support on R-Car Gen2 SoC.256	  There are 3 internal PCI controllers available with a single257	  built-in EHCI/OHCI host controller present on each one.258 259config PCIE_ROCKCHIP260	bool261	depends on PCI262 263config PCIE_ROCKCHIP_HOST264	tristate "Rockchip PCIe controller (host mode)"265	depends on ARCH_ROCKCHIP || COMPILE_TEST266	depends on OF267	depends on PCI_MSI268	select MFD_SYSCON269	select PCIE_ROCKCHIP270	help271	  Say Y here if you want internal PCI support on Rockchip SoC.272	  There is 1 internal PCIe port available to support GEN2 with273	  4 slots.274 275config PCIE_ROCKCHIP_EP276	bool "Rockchip PCIe controller (endpoint mode)"277	depends on ARCH_ROCKCHIP || COMPILE_TEST278	depends on OF279	depends on PCI_ENDPOINT280	select MFD_SYSCON281	select PCIE_ROCKCHIP282	help283	  Say Y here if you want to support Rockchip PCIe controller in284	  endpoint mode on Rockchip SoC. There is 1 internal PCIe port285	  available to support GEN2 with 4 slots.286 287config PCI_V3_SEMI288	bool "V3 Semiconductor PCI controller"289	depends on OF290	depends on ARM || COMPILE_TEST291	default ARCH_INTEGRATOR_AP292 293config PCI_XGENE294	bool "X-Gene PCIe controller"295	depends on ARM64 || COMPILE_TEST296	depends on OF || (ACPI && PCI_QUIRKS)297	help298	  Say Y here if you want internal PCI support on APM X-Gene SoC.299	  There are 5 internal PCIe ports available. Each port is GEN3 capable300	  and have varied lanes from x1 to x8.301 302config PCI_XGENE_MSI303	bool "X-Gene v1 PCIe MSI feature"304	depends on PCI_XGENE305	depends on PCI_MSI306	default y307	help308	  Say Y here if you want PCIe MSI support for the APM X-Gene v1 SoC.309	  This MSI driver supports 5 PCIe ports on the APM X-Gene v1 SoC.310 311config PCIE_XILINX312	bool "Xilinx AXI PCIe controller"313	depends on OF314	depends on PCI_MSI315	help316	  Say 'Y' here if you want kernel to support the Xilinx AXI PCIe317	  Host Bridge driver.318 319config PCIE_XILINX_DMA_PL320	bool "Xilinx DMA PL PCIe host bridge support"321	depends on ARCH_ZYNQMP || COMPILE_TEST322	depends on PCI_MSI323	select PCI_HOST_COMMON324	help325	  Say 'Y' here if you want kernel support for the Xilinx PL DMA326	  PCIe host bridge. The controller is a Soft IP which can act as327	  Root Port. If your system provides Xilinx PCIe host controller328	  bridge DMA as Soft IP say 'Y'; if you are not sure, say 'N'.329 330config PCIE_XILINX_NWL331	bool "Xilinx NWL PCIe controller"332	depends on ARCH_ZYNQMP || COMPILE_TEST333	depends on PCI_MSI334	help335	 Say 'Y' here if you want kernel support for Xilinx336	 NWL PCIe controller. The controller can act as Root Port337	 or End Point. The current option selection will only338	 support root port enabling.339 340config PCIE_XILINX_CPM341	bool "Xilinx Versal CPM PCI controller"342	depends on ARCH_ZYNQMP || COMPILE_TEST343	select PCI_HOST_COMMON344	help345	  Say 'Y' here if you want kernel support for the346	  Xilinx Versal CPM host bridge.347 348source "drivers/pci/controller/cadence/Kconfig"349source "drivers/pci/controller/dwc/Kconfig"350source "drivers/pci/controller/mobiveil/Kconfig"351source "drivers/pci/controller/plda/Kconfig"352endmenu353