151 lines
		
	
	
		
			4.1 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			151 lines
		
	
	
		
			4.1 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| # SPDX-License-Identifier: GPL-2.0
 | |
| #
 | |
| # PCI configuration
 | |
| #
 | |
| 
 | |
| source "drivers/pci/pcie/Kconfig"
 | |
| 
 | |
| config PCI_MSI
 | |
| 	bool "Message Signaled Interrupts (MSI and MSI-X)"
 | |
| 	depends on PCI
 | |
| 	select GENERIC_MSI_IRQ
 | |
| 	help
 | |
| 	   This allows device drivers to enable MSI (Message Signaled
 | |
| 	   Interrupts).  Message Signaled Interrupts enable a device to
 | |
| 	   generate an interrupt using an inbound Memory Write on its
 | |
| 	   PCI bus instead of asserting a device IRQ pin.
 | |
| 
 | |
| 	   Use of PCI MSI interrupts can be disabled at kernel boot time
 | |
| 	   by using the 'pci=nomsi' option.  This disables MSI for the
 | |
| 	   entire system.
 | |
| 
 | |
| 	   If you don't know what to do here, say Y.
 | |
| 
 | |
| config PCI_MSI_IRQ_DOMAIN
 | |
| 	def_bool ARC || ARM || ARM64 || X86
 | |
| 	depends on PCI_MSI
 | |
| 	select GENERIC_MSI_IRQ_DOMAIN
 | |
| 
 | |
| config PCI_QUIRKS
 | |
| 	default y
 | |
| 	bool "Enable PCI quirk workarounds" if EXPERT
 | |
| 	depends on PCI
 | |
| 	help
 | |
| 	  This enables workarounds for various PCI chipset bugs/quirks.
 | |
| 	  Disable this only if your target machine is unaffected by PCI
 | |
| 	  quirks.
 | |
| 
 | |
| config PCI_DEBUG
 | |
| 	bool "PCI Debugging"
 | |
| 	depends on PCI && DEBUG_KERNEL
 | |
| 	help
 | |
| 	  Say Y here if you want the PCI core to produce a bunch of debug
 | |
| 	  messages to the system log.  Select this if you are having a
 | |
| 	  problem with PCI support and want to see more of what is going on.
 | |
| 
 | |
| 	  When in doubt, say N.
 | |
| 
 | |
| config PCI_REALLOC_ENABLE_AUTO
 | |
| 	bool "Enable PCI resource re-allocation detection"
 | |
| 	depends on PCI
 | |
| 	depends on PCI_IOV
 | |
| 	help
 | |
| 	  Say Y here if you want the PCI core to detect if PCI resource
 | |
| 	  re-allocation needs to be enabled. You can always use pci=realloc=on
 | |
| 	  or pci=realloc=off to override it.  It will automatically
 | |
| 	  re-allocate PCI resources if SR-IOV BARs have not been allocated by
 | |
| 	  the BIOS.
 | |
| 
 | |
| 	  When in doubt, say N.
 | |
| 
 | |
| config PCI_STUB
 | |
| 	tristate "PCI Stub driver"
 | |
| 	depends on PCI
 | |
| 	help
 | |
| 	  Say Y or M here if you want be able to reserve a PCI device
 | |
| 	  when it is going to be assigned to a guest operating system.
 | |
| 
 | |
| 	  When in doubt, say N.
 | |
| 
 | |
| config PCI_PF_STUB
 | |
| 	tristate "PCI PF Stub driver"
 | |
| 	depends on PCI
 | |
| 	depends on PCI_IOV
 | |
| 	help
 | |
| 	  Say Y or M here if you want to enable support for devices that
 | |
| 	  require SR-IOV support, while at the same time the PF itself is
 | |
| 	  not providing any actual services on the host itself such as
 | |
| 	  storage or networking.
 | |
| 
 | |
| 	  When in doubt, say N.
 | |
| 
 | |
| config XEN_PCIDEV_FRONTEND
 | |
|         tristate "Xen PCI Frontend"
 | |
|         depends on PCI && X86 && XEN
 | |
|         select PCI_XEN
 | |
| 	select XEN_XENBUS_FRONTEND
 | |
|         default y
 | |
|         help
 | |
|           The PCI device frontend driver allows the kernel to import arbitrary
 | |
|           PCI devices from a PCI backend to support PCI driver domains.
 | |
| 
 | |
| config PCI_ATS
 | |
| 	bool
 | |
| 
 | |
| config PCI_ECAM
 | |
| 	bool
 | |
| 
 | |
| config PCI_LOCKLESS_CONFIG
 | |
| 	bool
 | |
| 
 | |
| config PCI_IOV
 | |
| 	bool "PCI IOV support"
 | |
| 	depends on PCI
 | |
| 	select PCI_ATS
 | |
| 	help
 | |
| 	  I/O Virtualization is a PCI feature supported by some devices
 | |
| 	  which allows them to create virtual devices which share their
 | |
| 	  physical resources.
 | |
| 
 | |
| 	  If unsure, say N.
 | |
| 
 | |
| config PCI_PRI
 | |
| 	bool "PCI PRI support"
 | |
| 	depends on PCI
 | |
| 	select PCI_ATS
 | |
| 	help
 | |
| 	  PRI is the PCI Page Request Interface. It allows PCI devices that are
 | |
| 	  behind an IOMMU to recover from page faults.
 | |
| 
 | |
| 	  If unsure, say N.
 | |
| 
 | |
| config PCI_PASID
 | |
| 	bool "PCI PASID support"
 | |
| 	depends on PCI
 | |
| 	select PCI_ATS
 | |
| 	help
 | |
| 	  Process Address Space Identifiers (PASIDs) can be used by PCI devices
 | |
| 	  to access more than one IO address space at the same time. To make
 | |
| 	  use of this feature an IOMMU is required which also supports PASIDs.
 | |
| 	  Select this option if you have such an IOMMU and want to compile the
 | |
| 	  driver for it into your kernel.
 | |
| 
 | |
| 	  If unsure, say N.
 | |
| 
 | |
| config PCI_LABEL
 | |
| 	def_bool y if (DMI || ACPI)
 | |
| 	depends on PCI
 | |
| 	select NLS
 | |
| 
 | |
| config PCI_HYPERV
 | |
|         tristate "Hyper-V PCI Frontend"
 | |
|         depends on PCI && X86 && HYPERV && PCI_MSI && PCI_MSI_IRQ_DOMAIN && X86_64
 | |
|         help
 | |
|           The PCI device frontend driver allows the kernel to import arbitrary
 | |
|           PCI devices from a PCI backend to support PCI driver domains.
 | |
| 
 | |
| source "drivers/pci/hotplug/Kconfig"
 | |
| source "drivers/pci/controller/Kconfig"
 | |
| source "drivers/pci/endpoint/Kconfig"
 | |
| source "drivers/pci/switch/Kconfig"
 | 
