forked from Minki/linux
d0a231f01e
-----BEGIN PGP SIGNATURE----- iQJIBAABCgAyFiEEgMe7l+5h9hnxdsnuWYigwDrT+vwFAmHgpugUHGJoZWxnYWFz QGdvb2dsZS5jb20ACgkQWYigwDrT+vz59g//eWRLb0j2Vgv84ZH4x1iv6MaBboQr 2wScnfoN+MIoh+tuM4kRak15X4nB8rJhNZZCzesMUN6PeZvrkoPo4sz/xdzIrA/N qY3h8NZ3nC4yCvs/tGem0zZUcSCJsxUAD0eegyMSa142xGIOQTHBSJRflR9osKSo bnQlKTkugV8t4kD7NlQ5M3HzN3R+mjsII5JNzCqv2XlzAZG3D8DhPyIpZnRNAOmW KiHOVXvQOocfUlvSs5kBlhgR1HgJkGnruCrJ1iDCWQH1Zk0iuVgoZWgVda6Cs3Xv gcTJLB7VoSdNZKnct9aMNYPKziHkYc7clilPeDsJs5TlSv3kKERzLj6c/5ZAxFWN +RsH+zYHDXJSsL/w0twPnaF5WCuVYUyrs3UiSjUvShKl1T9k9J+Jo8zwUUZx8Xb0 qXX8jRGMHolBGwPXm2fHEb4bwTUI8emPj29qK4L96KsQ3zKXWB8eGSosxUP52Tti RR2WZjkvwlREZCJp6jSEJYkhzoEaVAm8CjKpKUuneX9WcUOsMBSs9k7EXbUy7JeM hq5Keuqa8PZo/IK2DYYAchNnBJUDMsWJeduBW12qSmx3J+9victP2qOFu+9skP0a 85xlO6Cx8beiQh+XnY7jyROvIFuxTnGKHgkq/89Ham/whEzdJ+GRIiYB218kLLCW ILdas3C2iiGz99I= =Vgg4 -----END PGP SIGNATURE----- Merge tag 'pci-v5.17-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci Pull pci updates from Bjorn Helgaas: "Enumeration: - Use pci_find_vsec_capability() instead of open-coding it (Andy Shevchenko) - Convert pci_dev_present() stub from macro to static inline to avoid 'unused variable' errors (Hans de Goede) - Convert sysfs slot attributes from default_attrs to default_groups (Greg Kroah-Hartman) - Use DWORD accesses for LTR, L1 SS to avoid BayHub OZ711LV2 erratum (Rajat Jain) - Remove unnecessary initialization of static variables (Longji Guo) Resource management: - Always write Intel I210 ROM BAR on update to work around device defect (Bjorn Helgaas) PCIe native device hotplug: - Fix pciehp lockdep errors on Thunderbolt undock (Hans de Goede) - Fix infinite loop in pciehp IRQ handler on power fault (Lukas Wunner) Power management: - Convert amd64-agp, sis-agp, via-agp from legacy PCI power management to generic power management (Vaibhav Gupta) IOMMU: - Add function 1 DMA alias quirk for Marvell 88SE9125 SATA controller so it can work with an IOMMU (Yifeng Li) Error handling: - Add PCI_ERROR_RESPONSE and related definitions for signaling and checking for transaction errors on PCI (Naveen Naidu) - Fabricate PCI_ERROR_RESPONSE data (~0) in config read wrappers, instead of in host controller drivers, when transactions fail on PCI (Naveen Naidu) - Use PCI_POSSIBLE_ERROR() to check for possible failure of config reads (Naveen Naidu) Peer-to-peer DMA: - Add Logan Gunthorpe as P2PDMA maintainer (Bjorn Helgaas) ASPM: - Calculate link L0s and L1 exit latencies when needed instead of caching them (Saheed O. Bolarinwa) - Calculate device L0s and L1 acceptable exit latencies when needed instead of caching them (Saheed O. Bolarinwa) - Remove struct aspm_latency since it's no longer needed (Saheed O. Bolarinwa) APM X-Gene PCIe controller driver: - Fix IB window setup, which was broken by the fact that IB resources are now sorted in address order instead of DT dma-ranges order (Rob Herring) Apple PCIe controller driver: - Enable clock gating to save power (Hector Martin) - Fix REFCLK1 enable/poll logic (Hector Martin) Broadcom STB PCIe controller driver: - Declare bitmap correctly for use by bitmap interfaces (Christophe JAILLET) - Clean up computation of legacy and non-legacy MSI bitmasks (Florian Fainelli) - Update suspend/resume/remove error handling to warn about errors and not fail the operation (Jim Quinlan) - Correct the "pcie" and "msi" interrupt descriptions in DT binding (Jim Quinlan) - Add DT bindings for endpoint voltage regulators (Jim Quinlan) - Split brcm_pcie_setup() into two functions (Jim Quinlan) - Add mechanism for turning on voltage regulators for connected devices (Jim Quinlan) - Turn voltage regulators for connected devices on/off when bus is added or removed (Jim Quinlan) - When suspending, don't turn off voltage regulators for wakeup devices (Jim Quinlan) Freescale i.MX6 PCIe controller driver: - Add i.MX8MM support (Richard Zhu) Freescale Layerscape PCIe controller driver: - Use DWC common ops instead of layerscape-specific link-up functions (Hou Zhiqiang) Intel VMD host bridge driver: - Honor platform ACPI _OSC feature negotiation for Root Ports below VMD (Kai-Heng Feng) - Add support for Raptor Lake SKUs (Karthik L Gopalakrishnan) - Reset everything below VMD before enumerating to work around failure to enumerate NVMe devices when guest OS reboots (Nirmal Patel) Bridge emulation (used by Marvell Aardvark and MVEBU): - Make emulated ROM BAR read-only by default (Pali Rohár) - Make some emulated legacy PCI bits read-only for PCIe devices (Pali Rohár) - Update reserved bits in emulated PCIe Capability (Pali Rohár) - Allow drivers to emulate different PCIe Capability versions (Pali Rohár) - Set emulated Capabilities List bit for all PCIe devices, since they must have at least a PCIe Capability (Pali Rohár) Marvell Aardvark PCIe controller driver: - Add bridge emulation definitions for PCIe DEVCAP2, DEVCTL2, DEVSTA2, LNKCAP2, LNKCTL2, LNKSTA2, SLTCAP2, SLTCTL2, SLTSTA2 (Pali Rohár) - Add aardvark support for DEVCAP2, DEVCTL2, LNKCAP2 and LNKCTL2 registers (Pali Rohár) - Clear all MSIs at setup to avoid spurious interrupts (Pali Rohár) - Disable bus mastering when unbinding host controller driver (Pali Rohár) - Mask all interrupts when unbinding host controller driver (Pali Rohár) - Fix memory leak in host controller unbind (Pali Rohár) - Assert PERST# when unbinding host controller driver (Pali Rohár) - Disable link training when unbinding host controller driver (Pali Rohár) - Disable common PHY when unbinding host controller driver (Pali Rohár) - Fix resource type checking to check only IORESOURCE_MEM, not IORESOURCE_MEM_64, which is a flavor of IORESOURCE_MEM (Pali Rohár) Marvell MVEBU PCIe controller driver: - Implement pci_remap_iospace() for ARM so mvebu can use devm_pci_remap_iospace() instead of the previous ARM-specific pci_ioremap_io() interface (Pali Rohár) - Use the standard pci_host_probe() instead of the device-specific mvebu_pci_host_probe() (Pali Rohár) - Replace all uses of ARM-specific pci_ioremap_io() with the ARM implementation of the standard pci_remap_iospace() interface and remove pci_ioremap_io() (Pali Rohár) - Skip initializing invalid Root Ports (Pali Rohár) - Check for errors from pci_bridge_emul_init() (Pali Rohár) - Ignore any bridges at non-zero function numbers (Pali Rohár) - Return ~0 data for invalid config read size (Pali Rohár) - Disallow mapping interrupts on emulated bridges (Pali Rohár) - Clear Root Port Memory & I/O Space Enable and Bus Master Enable at initialization (Pali Rohár) - Make type bits in Root Port I/O Base register read-only (Pali Rohár) - Disable Root Port windows when base/limit set to invalid values (Pali Rohár) - Set controller to Root Complex mode (Pali Rohár) - Set Root Port Class Code to PCI Bridge (Pali Rohár) - Update emulated Root Port secondary bus numbers to better reflect the actual topology (Pali Rohár) - Add PCI_BRIDGE_CTL_BUS_RESET support to emulated Root Ports so pci_reset_secondary_bus() can reset connected devices (Pali Rohár) - Add PCI_EXP_DEVCTL Error Reporting Enable support to emulated Root Ports (Pali Rohár) - Add PCI_EXP_RTSTA PME Status bit support to emulated Root Ports (Pali Rohár) - Add DEVCAP2, DEVCTL2 and LNKCTL2 support to emulated Root Ports on Armada XP and newer devices (Pali Rohár) - Export mvebu-mbus.c symbols to allow pci-mvebu.c to be a module (Pali Rohár) - Add support for compiling as a module (Pali Rohár) MediaTek PCIe controller driver: - Assert PERST# for 100ms to allow power and clock to stabilize (qizhong cheng) MediaTek PCIe Gen3 controller driver: - Disable Mediatek DVFSRC voltage request since lack of DVFSRC to respond to the request causes failure to exit L1 PM Substate (Jianjun Wang) MediaTek MT7621 PCIe controller driver: - Declare mt7621_pci_ops static (Sergio Paracuellos) - Give pcibios_root_bridge_prepare() access to host bridge windows (Sergio Paracuellos) - Move MIPS I/O coherency unit setup from driver to pcibios_root_bridge_prepare() (Sergio Paracuellos) - Add missing MODULE_LICENSE() (Sergio Paracuellos) - Allow COMPILE_TEST for all arches (Sergio Paracuellos) Microsoft Hyper-V host bridge driver: - Add hv-internal interfaces to encapsulate arch IRQ dependencies (Sunil Muthuswamy) - Add arm64 Hyper-V vPCI support (Sunil Muthuswamy) Qualcomm PCIe controller driver: - Undo PM setup in qcom_pcie_probe() error handling path (Christophe JAILLET) - Use __be16 type to store return value from cpu_to_be16() (Manivannan Sadhasivam) - Constify static dw_pcie_ep_ops (Rikard Falkeborn) Renesas R-Car PCIe controller driver: - Fix aarch32 abort handler so it doesn't check the wrong bus clock before accessing the host controller (Marek Vasut) TI Keystone PCIe controller driver: - Add register offset for ti,syscon-pcie-id and ti,syscon-pcie-mode DT properties (Kishon Vijay Abraham I) MicroSemi Switchtec management driver: - Add Gen4 automotive device IDs (Kelvin Cao) - Declare state_names[] as static so it's not allocated and initialized for every call (Kelvin Cao) Host controller driver cleanups: - Use of_device_get_match_data(), not of_match_device(), when we only need the device data in altera, artpec6, cadence, designware-plat, dra7xx, keystone, kirin (Fan Fei) - Drop pointless of_device_get_match_data() cast in j721e (Bjorn Helgaas) - Drop redundant struct device * from j721e since struct cdns_pcie already has one (Bjorn Helgaas) - Rename driver structs to *_pcie in intel-gw, iproc, ls-gen4, mediatek-gen3, microchip, mt7621, rcar-gen2, tegra194, uniphier, xgene, xilinx, xilinx-cpm for consistency across drivers (Fan Fei) - Fix invalid address space conversions in hisi, spear13xx (Bjorn Helgaas) Miscellaneous: - Sort Intel Device IDs by value (Andy Shevchenko) - Change Capability offsets to hex to match spec (Baruch Siach) - Correct misspellings (Krzysztof Wilczyński) - Terminate statement with semicolon in pci_endpoint_test.c (Ming Wang)" * tag 'pci-v5.17-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci: (151 commits) PCI: mt7621: Allow COMPILE_TEST for all arches PCI: mt7621: Add missing MODULE_LICENSE() PCI: mt7621: Move MIPS setup to pcibios_root_bridge_prepare() PCI: Let pcibios_root_bridge_prepare() access bridge->windows PCI: mt7621: Declare mt7621_pci_ops static PCI: brcmstb: Do not turn off WOL regulators on suspend PCI: brcmstb: Add control of subdevice voltage regulators PCI: brcmstb: Add mechanism to turn on subdev regulators PCI: brcmstb: Split brcm_pcie_setup() into two funcs dt-bindings: PCI: Add bindings for Brcmstb EP voltage regulators dt-bindings: PCI: Correct brcmstb interrupts, interrupt-map. PCI: brcmstb: Fix function return value handling PCI: brcmstb: Do not use __GENMASK PCI: brcmstb: Declare 'used' as bitmap, not unsigned long PCI: hv: Add arm64 Hyper-V vPCI support PCI: hv: Make the code arch neutral by adding arch specific interfaces PCI: pciehp: Use down_read/write_nested(reset_lock) to fix lockdep errors x86/PCI: Remove initialization of static variables to false PCI: Use DWORD accesses for LTR, L1 SS to avoid erratum misc: pci_endpoint_test: Terminate statement with semicolon ...
346 lines
10 KiB
Plaintext
346 lines
10 KiB
Plaintext
# SPDX-License-Identifier: GPL-2.0
|
|
|
|
menu "PCI controller drivers"
|
|
depends on PCI
|
|
|
|
config PCI_MVEBU
|
|
tristate "Marvell EBU PCIe controller"
|
|
depends on ARCH_MVEBU || ARCH_DOVE || COMPILE_TEST
|
|
depends on MVEBU_MBUS
|
|
depends on ARM
|
|
depends on OF
|
|
select PCI_BRIDGE_EMUL
|
|
|
|
config PCI_AARDVARK
|
|
tristate "Aardvark PCIe controller"
|
|
depends on (ARCH_MVEBU && ARM64) || COMPILE_TEST
|
|
depends on OF
|
|
depends on PCI_MSI_IRQ_DOMAIN
|
|
select PCI_BRIDGE_EMUL
|
|
help
|
|
Add support for Aardvark 64bit PCIe Host Controller. This
|
|
controller is part of the South Bridge of the Marvel Armada
|
|
3700 SoC.
|
|
|
|
config PCIE_XILINX_NWL
|
|
bool "NWL PCIe Core"
|
|
depends on ARCH_ZYNQMP || COMPILE_TEST
|
|
depends on PCI_MSI_IRQ_DOMAIN
|
|
help
|
|
Say 'Y' here if you want kernel support for Xilinx
|
|
NWL PCIe controller. The controller can act as Root Port
|
|
or End Point. The current option selection will only
|
|
support root port enabling.
|
|
|
|
config PCI_FTPCI100
|
|
bool "Faraday Technology FTPCI100 PCI controller"
|
|
depends on OF
|
|
default ARCH_GEMINI
|
|
|
|
config PCI_IXP4XX
|
|
bool "Intel IXP4xx PCI controller"
|
|
depends on ARM && OF
|
|
depends on ARCH_IXP4XX || COMPILE_TEST
|
|
default ARCH_IXP4XX
|
|
help
|
|
Say Y here if you want support for the PCI host controller found
|
|
in the Intel IXP4xx XScale-based network processor SoC.
|
|
|
|
config PCI_TEGRA
|
|
bool "NVIDIA Tegra PCIe controller"
|
|
depends on ARCH_TEGRA || COMPILE_TEST
|
|
depends on PCI_MSI_IRQ_DOMAIN
|
|
help
|
|
Say Y here if you want support for the PCIe host controller found
|
|
on NVIDIA Tegra SoCs.
|
|
|
|
config PCI_RCAR_GEN2
|
|
bool "Renesas R-Car Gen2 Internal PCI controller"
|
|
depends on ARCH_RENESAS || COMPILE_TEST
|
|
depends on ARM
|
|
help
|
|
Say Y here if you want internal PCI support on R-Car Gen2 SoC.
|
|
There are 3 internal PCI controllers available with a single
|
|
built-in EHCI/OHCI host controller present on each one.
|
|
|
|
config PCIE_RCAR_HOST
|
|
bool "Renesas R-Car PCIe host controller"
|
|
depends on ARCH_RENESAS || COMPILE_TEST
|
|
depends on PCI_MSI_IRQ_DOMAIN
|
|
help
|
|
Say Y here if you want PCIe controller support on R-Car SoCs in host
|
|
mode.
|
|
|
|
config PCIE_RCAR_EP
|
|
bool "Renesas R-Car PCIe endpoint controller"
|
|
depends on ARCH_RENESAS || COMPILE_TEST
|
|
depends on PCI_ENDPOINT
|
|
help
|
|
Say Y here if you want PCIe controller support on R-Car SoCs in
|
|
endpoint mode.
|
|
|
|
config PCI_HOST_COMMON
|
|
tristate
|
|
select PCI_ECAM
|
|
|
|
config PCI_HOST_GENERIC
|
|
tristate "Generic PCI host controller"
|
|
depends on OF
|
|
select PCI_HOST_COMMON
|
|
select IRQ_DOMAIN
|
|
help
|
|
Say Y here if you want to support a simple generic PCI host
|
|
controller, such as the one emulated by kvmtool.
|
|
|
|
config PCIE_XILINX
|
|
bool "Xilinx AXI PCIe host bridge support"
|
|
depends on OF || COMPILE_TEST
|
|
depends on PCI_MSI_IRQ_DOMAIN
|
|
help
|
|
Say 'Y' here if you want kernel to support the Xilinx AXI PCIe
|
|
Host Bridge driver.
|
|
|
|
config PCIE_XILINX_CPM
|
|
bool "Xilinx Versal CPM host bridge support"
|
|
depends on ARCH_ZYNQMP || COMPILE_TEST
|
|
select PCI_HOST_COMMON
|
|
help
|
|
Say 'Y' here if you want kernel support for the
|
|
Xilinx Versal CPM host bridge.
|
|
|
|
config PCI_XGENE
|
|
bool "X-Gene PCIe controller"
|
|
depends on ARM64 || COMPILE_TEST
|
|
depends on OF || (ACPI && PCI_QUIRKS)
|
|
help
|
|
Say Y here if you want internal PCI support on APM X-Gene SoC.
|
|
There are 5 internal PCIe ports available. Each port is GEN3 capable
|
|
and have varied lanes from x1 to x8.
|
|
|
|
config PCI_XGENE_MSI
|
|
bool "X-Gene v1 PCIe MSI feature"
|
|
depends on PCI_XGENE
|
|
depends on PCI_MSI_IRQ_DOMAIN
|
|
default y
|
|
help
|
|
Say Y here if you want PCIe MSI support for the APM X-Gene v1 SoC.
|
|
This MSI driver supports 5 PCIe ports on the APM X-Gene v1 SoC.
|
|
|
|
config PCI_V3_SEMI
|
|
bool "V3 Semiconductor PCI controller"
|
|
depends on OF
|
|
depends on ARM || COMPILE_TEST
|
|
default ARCH_INTEGRATOR_AP
|
|
|
|
config PCI_VERSATILE
|
|
bool "ARM Versatile PB PCI controller"
|
|
depends on ARCH_VERSATILE || COMPILE_TEST
|
|
|
|
config PCIE_IPROC
|
|
tristate
|
|
help
|
|
This enables the iProc PCIe core controller support for Broadcom's
|
|
iProc family of SoCs. An appropriate bus interface driver needs
|
|
to be enabled to select this.
|
|
|
|
config PCIE_IPROC_PLATFORM
|
|
tristate "Broadcom iProc PCIe platform bus driver"
|
|
depends on ARCH_BCM_IPROC || (ARM && COMPILE_TEST)
|
|
depends on OF
|
|
select PCIE_IPROC
|
|
default ARCH_BCM_IPROC
|
|
help
|
|
Say Y here if you want to use the Broadcom iProc PCIe controller
|
|
through the generic platform bus interface
|
|
|
|
config PCIE_IPROC_BCMA
|
|
tristate "Broadcom iProc PCIe BCMA bus driver"
|
|
depends on ARM && (ARCH_BCM_IPROC || COMPILE_TEST)
|
|
select PCIE_IPROC
|
|
select BCMA
|
|
default ARCH_BCM_5301X
|
|
help
|
|
Say Y here if you want to use the Broadcom iProc PCIe controller
|
|
through the BCMA bus interface
|
|
|
|
config PCIE_IPROC_MSI
|
|
bool "Broadcom iProc PCIe MSI support"
|
|
depends on PCIE_IPROC_PLATFORM || PCIE_IPROC_BCMA
|
|
depends on PCI_MSI_IRQ_DOMAIN
|
|
default ARCH_BCM_IPROC
|
|
help
|
|
Say Y here if you want to enable MSI support for Broadcom's iProc
|
|
PCIe controller
|
|
|
|
config PCIE_ALTERA
|
|
tristate "Altera PCIe controller"
|
|
depends on ARM || NIOS2 || ARM64 || COMPILE_TEST
|
|
help
|
|
Say Y here if you want to enable PCIe controller support on Altera
|
|
FPGA.
|
|
|
|
config PCIE_ALTERA_MSI
|
|
tristate "Altera PCIe MSI feature"
|
|
depends on PCIE_ALTERA
|
|
depends on PCI_MSI_IRQ_DOMAIN
|
|
help
|
|
Say Y here if you want PCIe MSI support for the Altera FPGA.
|
|
This MSI driver supports Altera MSI to GIC controller IP.
|
|
|
|
config PCI_HOST_THUNDER_PEM
|
|
bool "Cavium Thunder PCIe controller to off-chip devices"
|
|
depends on ARM64 || COMPILE_TEST
|
|
depends on OF || (ACPI && PCI_QUIRKS)
|
|
select PCI_HOST_COMMON
|
|
help
|
|
Say Y here if you want PCIe support for CN88XX Cavium Thunder SoCs.
|
|
|
|
config PCI_HOST_THUNDER_ECAM
|
|
bool "Cavium Thunder ECAM controller to on-chip devices on pass-1.x silicon"
|
|
depends on ARM64 || COMPILE_TEST
|
|
depends on OF || (ACPI && PCI_QUIRKS)
|
|
select PCI_HOST_COMMON
|
|
help
|
|
Say Y here if you want ECAM support for CN88XX-Pass-1.x Cavium Thunder SoCs.
|
|
|
|
config PCIE_ROCKCHIP
|
|
bool
|
|
depends on PCI
|
|
|
|
config PCIE_ROCKCHIP_HOST
|
|
tristate "Rockchip PCIe host controller"
|
|
depends on ARCH_ROCKCHIP || COMPILE_TEST
|
|
depends on OF
|
|
depends on PCI_MSI_IRQ_DOMAIN
|
|
select MFD_SYSCON
|
|
select PCIE_ROCKCHIP
|
|
help
|
|
Say Y here if you want internal PCI support on Rockchip SoC.
|
|
There is 1 internal PCIe port available to support GEN2 with
|
|
4 slots.
|
|
|
|
config PCIE_ROCKCHIP_EP
|
|
bool "Rockchip PCIe endpoint controller"
|
|
depends on ARCH_ROCKCHIP || COMPILE_TEST
|
|
depends on OF
|
|
depends on PCI_ENDPOINT
|
|
select MFD_SYSCON
|
|
select PCIE_ROCKCHIP
|
|
help
|
|
Say Y here if you want to support Rockchip PCIe controller in
|
|
endpoint mode on Rockchip SoC. There is 1 internal PCIe port
|
|
available to support GEN2 with 4 slots.
|
|
|
|
config PCIE_MEDIATEK
|
|
tristate "MediaTek PCIe controller"
|
|
depends on ARCH_MEDIATEK || COMPILE_TEST
|
|
depends on OF
|
|
depends on PCI_MSI_IRQ_DOMAIN
|
|
help
|
|
Say Y here if you want to enable PCIe controller support on
|
|
MediaTek SoCs.
|
|
|
|
config PCIE_MEDIATEK_GEN3
|
|
tristate "MediaTek Gen3 PCIe controller"
|
|
depends on ARCH_MEDIATEK || COMPILE_TEST
|
|
depends on PCI_MSI_IRQ_DOMAIN
|
|
help
|
|
Adds support for PCIe Gen3 MAC controller for MediaTek SoCs.
|
|
This PCIe controller is compatible with Gen3, Gen2 and Gen1 speed,
|
|
and support up to 256 MSI interrupt numbers for
|
|
multi-function devices.
|
|
|
|
Say Y here if you want to enable Gen3 PCIe controller support on
|
|
MediaTek SoCs.
|
|
|
|
config VMD
|
|
depends on PCI_MSI && X86_64 && SRCU && !UML
|
|
tristate "Intel Volume Management Device Driver"
|
|
help
|
|
Adds support for the Intel Volume Management Device (VMD). VMD is a
|
|
secondary PCI host bridge that allows PCI Express root ports,
|
|
and devices attached to them, to be removed from the default
|
|
PCI domain and placed within the VMD domain. This provides
|
|
more bus resources than are otherwise possible with a
|
|
single domain. If you know your system provides one of these and
|
|
has devices attached to it, say Y; if you are not sure, say N.
|
|
|
|
To compile this driver as a module, choose M here: the
|
|
module will be called vmd.
|
|
|
|
config PCIE_BRCMSTB
|
|
tristate "Broadcom Brcmstb PCIe host controller"
|
|
depends on ARCH_BRCMSTB || ARCH_BCM2835 || ARCH_BCM4908 || \
|
|
BMIPS_GENERIC || COMPILE_TEST
|
|
depends on OF
|
|
depends on PCI_MSI_IRQ_DOMAIN
|
|
default ARCH_BRCMSTB || BMIPS_GENERIC
|
|
help
|
|
Say Y here to enable PCIe host controller support for
|
|
Broadcom STB based SoCs, like the Raspberry Pi 4.
|
|
|
|
config PCI_HYPERV_INTERFACE
|
|
tristate "Hyper-V PCI Interface"
|
|
depends on ((X86 && X86_64) || ARM64) && HYPERV && PCI_MSI && PCI_MSI_IRQ_DOMAIN
|
|
help
|
|
The Hyper-V PCI Interface is a helper driver allows other drivers to
|
|
have a common interface with the Hyper-V PCI frontend driver.
|
|
|
|
config PCI_LOONGSON
|
|
bool "LOONGSON PCI Controller"
|
|
depends on MACH_LOONGSON64 || COMPILE_TEST
|
|
depends on OF
|
|
depends on PCI_QUIRKS
|
|
default MACH_LOONGSON64
|
|
help
|
|
Say Y here if you want to enable PCI controller support on
|
|
Loongson systems.
|
|
|
|
config PCIE_MICROCHIP_HOST
|
|
bool "Microchip AXI PCIe host bridge support"
|
|
depends on PCI_MSI && OF
|
|
select PCI_MSI_IRQ_DOMAIN
|
|
select GENERIC_MSI_IRQ_DOMAIN
|
|
select PCI_HOST_COMMON
|
|
help
|
|
Say Y here if you want kernel to support the Microchip AXI PCIe
|
|
Host Bridge driver.
|
|
|
|
config PCIE_HISI_ERR
|
|
depends on ACPI_APEI_GHES && (ARM64 || COMPILE_TEST)
|
|
bool "HiSilicon HIP PCIe controller error handling driver"
|
|
help
|
|
Say Y here if you want error handling support
|
|
for the PCIe controller's errors on HiSilicon HIP SoCs
|
|
|
|
config PCIE_APPLE_MSI_DOORBELL_ADDR
|
|
hex
|
|
default 0xfffff000
|
|
depends on PCIE_APPLE
|
|
|
|
config PCIE_APPLE
|
|
tristate "Apple PCIe controller"
|
|
depends on ARCH_APPLE || COMPILE_TEST
|
|
depends on OF
|
|
depends on PCI_MSI_IRQ_DOMAIN
|
|
select PCI_HOST_COMMON
|
|
help
|
|
Say Y here if you want to enable PCIe controller support on Apple
|
|
system-on-chips, like the Apple M1. This is required for the USB
|
|
type-A ports, Ethernet, Wi-Fi, and Bluetooth.
|
|
|
|
If unsure, say Y if you have an Apple Silicon system.
|
|
|
|
config PCIE_MT7621
|
|
tristate "MediaTek MT7621 PCIe Controller"
|
|
depends on SOC_MT7621 || COMPILE_TEST
|
|
select PHY_MT7621_PCI
|
|
default SOC_MT7621
|
|
help
|
|
This selects a driver for the MediaTek MT7621 PCIe Controller.
|
|
|
|
source "drivers/pci/controller/dwc/Kconfig"
|
|
source "drivers/pci/controller/mobiveil/Kconfig"
|
|
source "drivers/pci/controller/cadence/Kconfig"
|
|
endmenu
|