]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/blob - drivers/pci/Kconfig
ceph: quota: don't allow cross-quota renames
[mirror_ubuntu-bionic-kernel.git] / drivers / pci / Kconfig
1 #
2 # PCI configuration
3 #
4
5 source "drivers/pci/pcie/Kconfig"
6
7 config PCI_BUS_ADDR_T_64BIT
8 def_bool y if (ARCH_DMA_ADDR_T_64BIT || 64BIT)
9 depends on PCI
10
11 config PCI_MSI
12 bool "Message Signaled Interrupts (MSI and MSI-X)"
13 depends on PCI
14 select GENERIC_MSI_IRQ
15 help
16 This allows device drivers to enable MSI (Message Signaled
17 Interrupts). Message Signaled Interrupts enable a device to
18 generate an interrupt using an inbound Memory Write on its
19 PCI bus instead of asserting a device IRQ pin.
20
21 Use of PCI MSI interrupts can be disabled at kernel boot time
22 by using the 'pci=nomsi' option. This disables MSI for the
23 entire system.
24
25 If you don't know what to do here, say Y.
26
27 config PCI_MSI_IRQ_DOMAIN
28 def_bool ARC || ARM || ARM64 || X86
29 depends on PCI_MSI
30 select GENERIC_MSI_IRQ_DOMAIN
31
32 config PCI_QUIRKS
33 default y
34 bool "Enable PCI quirk workarounds" if EXPERT
35 depends on PCI
36 help
37 This enables workarounds for various PCI chipset bugs/quirks.
38 Disable this only if your target machine is unaffected by PCI
39 quirks.
40
41 config PCI_DEBUG
42 bool "PCI Debugging"
43 depends on PCI && DEBUG_KERNEL
44 help
45 Say Y here if you want the PCI core to produce a bunch of debug
46 messages to the system log. Select this if you are having a
47 problem with PCI support and want to see more of what is going on.
48
49 When in doubt, say N.
50
51 config PCI_REALLOC_ENABLE_AUTO
52 bool "Enable PCI resource re-allocation detection"
53 depends on PCI
54 depends on PCI_IOV
55 help
56 Say Y here if you want the PCI core to detect if PCI resource
57 re-allocation needs to be enabled. You can always use pci=realloc=on
58 or pci=realloc=off to override it. It will automatically
59 re-allocate PCI resources if SR-IOV BARs have not been allocated by
60 the BIOS.
61
62 When in doubt, say N.
63
64 config PCI_STUB
65 tristate "PCI Stub driver"
66 depends on PCI
67 help
68 Say Y or M here if you want be able to reserve a PCI device
69 when it is going to be assigned to a guest operating system.
70
71 When in doubt, say N.
72
73 config XEN_PCIDEV_FRONTEND
74 tristate "Xen PCI Frontend"
75 depends on PCI && X86 && XEN
76 select PCI_XEN
77 select XEN_XENBUS_FRONTEND
78 default y
79 help
80 The PCI device frontend driver allows the kernel to import arbitrary
81 PCI devices from a PCI backend to support PCI driver domains.
82
83 config PCI_ATS
84 bool
85
86 config PCI_ECAM
87 bool
88
89 config PCI_LOCKLESS_CONFIG
90 bool
91
92 config PCI_IOV
93 bool "PCI IOV support"
94 depends on PCI
95 select PCI_ATS
96 help
97 I/O Virtualization is a PCI feature supported by some devices
98 which allows them to create virtual devices which share their
99 physical resources.
100
101 If unsure, say N.
102
103 config PCI_PRI
104 bool "PCI PRI support"
105 depends on PCI
106 select PCI_ATS
107 help
108 PRI is the PCI Page Request Interface. It allows PCI devices that are
109 behind an IOMMU to recover from page faults.
110
111 If unsure, say N.
112
113 config PCI_PASID
114 bool "PCI PASID support"
115 depends on PCI
116 select PCI_ATS
117 help
118 Process Address Space Identifiers (PASIDs) can be used by PCI devices
119 to access more than one IO address space at the same time. To make
120 use of this feature an IOMMU is required which also supports PASIDs.
121 Select this option if you have such an IOMMU and want to compile the
122 driver for it into your kernel.
123
124 If unsure, say N.
125
126 config PCI_LABEL
127 def_bool y if (DMI || ACPI)
128 select NLS
129
130 config PCI_HYPERV
131 tristate "Hyper-V PCI Frontend"
132 depends on PCI && X86 && HYPERV && PCI_MSI && PCI_MSI_IRQ_DOMAIN && X86_64
133 help
134 The PCI device frontend driver allows the kernel to import arbitrary
135 PCI devices from a PCI backend to support PCI driver domains.
136
137 source "drivers/pci/hotplug/Kconfig"
138 source "drivers/pci/dwc/Kconfig"
139 source "drivers/pci/host/Kconfig"
140 source "drivers/pci/endpoint/Kconfig"
141 source "drivers/pci/switch/Kconfig"