xref: /linux/drivers/pci/Kconfig (revision b95a7bd700466c10fda84acbd33f70cf66ec91ce)
11da177e4SLinus Torvalds#
21da177e4SLinus Torvalds# PCI configuration
31da177e4SLinus Torvalds#
4f282b970SDan Williamsconfig ARCH_SUPPORTS_MSI
5f282b970SDan Williams	bool
6f282b970SDan Williams	default n
7f282b970SDan Williams
81da177e4SLinus Torvaldsconfig PCI_MSI
91da177e4SLinus Torvalds	bool "Message Signaled Interrupts (MSI and MSI-X)"
101da177e4SLinus Torvalds	depends on PCI
11f282b970SDan Williams	depends on ARCH_SUPPORTS_MSI
121da177e4SLinus Torvalds	help
131da177e4SLinus Torvalds	   This allows device drivers to enable MSI (Message Signaled
141da177e4SLinus Torvalds	   Interrupts).  Message Signaled Interrupts enable a device to
151da177e4SLinus Torvalds	   generate an interrupt using an inbound Memory Write on its
161da177e4SLinus Torvalds	   PCI bus instead of asserting a device IRQ pin.
171da177e4SLinus Torvalds
18309e57dfSMatthew Wilcox	   Use of PCI MSI interrupts can be disabled at kernel boot time
19309e57dfSMatthew Wilcox	   by using the 'pci=nomsi' option.  This disables MSI for the
20309e57dfSMatthew Wilcox	   entire system.
21309e57dfSMatthew Wilcox
223196180aSJesse Barnes	   If you don't know what to do here, say Y.
231da177e4SLinus Torvalds
241da177e4SLinus Torvaldsconfig PCI_DEBUG
251da177e4SLinus Torvalds	bool "PCI Debugging"
261da177e4SLinus Torvalds	depends on PCI && DEBUG_KERNEL
271da177e4SLinus Torvalds	help
281da177e4SLinus Torvalds	  Say Y here if you want the PCI core to produce a bunch of debug
291da177e4SLinus Torvalds	  messages to the system log.  Select this if you are having a
301da177e4SLinus Torvalds	  problem with PCI support and want to see more of what is going on.
311da177e4SLinus Torvalds
321da177e4SLinus Torvalds	  When in doubt, say N.
331da177e4SLinus Torvalds
34c70e0d9dSChris Wrightconfig PCI_STUB
35c70e0d9dSChris Wright	tristate "PCI Stub driver"
36c70e0d9dSChris Wright	depends on PCI
37c70e0d9dSChris Wright	help
38c70e0d9dSChris Wright	  Say Y or M here if you want be able to reserve a PCI device
39c70e0d9dSChris Wright	  when it is going to be assigned to a guest operating system.
40c70e0d9dSChris Wright
41c70e0d9dSChris Wright	  When in doubt, say N.
42c70e0d9dSChris Wright
43956a9202SRyan Wilsonconfig XEN_PCIDEV_FRONTEND
44956a9202SRyan Wilson        tristate "Xen PCI Frontend"
45956a9202SRyan Wilson        depends on PCI && X86 && XEN
46956a9202SRyan Wilson        select HOTPLUG
47956a9202SRyan Wilson        select PCI_XEN
48fce263c1SKonrad Rzeszutek Wilk	select XEN_XENBUS_FRONTEND
49956a9202SRyan Wilson        default y
50956a9202SRyan Wilson        help
51956a9202SRyan Wilson          The PCI device frontend driver allows the kernel to import arbitrary
52956a9202SRyan Wilson          PCI devices from a PCI backend to support PCI driver domains.
53956a9202SRyan Wilson
548b955b0dSEric W. Biedermanconfig HT_IRQ
558b955b0dSEric W. Biederman	bool "Interrupts on hypertransport devices"
568b955b0dSEric W. Biederman	default y
57fbab41ccSAdrian Bunk	depends on PCI && X86_LOCAL_APIC && X86_IO_APIC
588b955b0dSEric W. Biederman	help
598b955b0dSEric W. Biederman	   This allows native hypertransport devices to use interrupts.
608b955b0dSEric W. Biederman
618b955b0dSEric W. Biederman	   If unsure say Y.
62d1b054daSYu Zhao
63db3c33c6SJoerg Roedelconfig PCI_ATS
64db3c33c6SJoerg Roedel	bool
65db3c33c6SJoerg Roedel
66d1b054daSYu Zhaoconfig PCI_IOV
67d1b054daSYu Zhao	bool "PCI IOV support"
68d1b054daSYu Zhao	depends on PCI
69db3c33c6SJoerg Roedel	select PCI_ATS
70d1b054daSYu Zhao	help
71d1b054daSYu Zhao	  I/O Virtualization is a PCI feature supported by some devices
72d1b054daSYu Zhao	  which allows them to create virtual devices which share their
73d1b054daSYu Zhao	  physical resources.
74d1b054daSYu Zhao
75d1b054daSYu Zhao	  If unsure, say N.
76204d49a5SBjorn Helgaas
77c320b976SJoerg Roedelconfig PCI_PRI
78c320b976SJoerg Roedel	bool "PCI PRI support"
79c54420d3SJoerg Roedel	depends on PCI
80c320b976SJoerg Roedel	select PCI_ATS
81c320b976SJoerg Roedel	help
82c320b976SJoerg Roedel	  PRI is the PCI Page Request Interface. It allows PCI devices that are
83c320b976SJoerg Roedel	  behind an IOMMU to recover from page faults.
84c320b976SJoerg Roedel
85c320b976SJoerg Roedel	  If unsure, say N.
86c320b976SJoerg Roedel
87086ac11fSJoerg Roedelconfig PCI_PASID
88086ac11fSJoerg Roedel	bool "PCI PASID support"
89086ac11fSJoerg Roedel	depends on PCI
90086ac11fSJoerg Roedel	select PCI_ATS
91086ac11fSJoerg Roedel	help
92086ac11fSJoerg Roedel	  Process Address Space Identifiers (PASIDs) can be used by PCI devices
93086ac11fSJoerg Roedel	  to access more than one IO address space at the same time. To make
94086ac11fSJoerg Roedel	  use of this feature an IOMMU is required which also supports PASIDs.
95086ac11fSJoerg Roedel	  Select this option if you have such an IOMMU and want to compile the
96086ac11fSJoerg Roedel	  driver for it into your kernel.
97086ac11fSJoerg Roedel
98086ac11fSJoerg Roedel	  If unsure, say N.
99086ac11fSJoerg Roedel
100204d49a5SBjorn Helgaasconfig PCI_IOAPIC
101*b95a7bd7SJan Beulich	tristate "PCI IO-APIC hotplug support" if X86
102204d49a5SBjorn Helgaas	depends on PCI
103204d49a5SBjorn Helgaas	depends on ACPI
104204d49a5SBjorn Helgaas	depends on HOTPLUG
105*b95a7bd7SJan Beulich	default !X86
1066058989bSNarendra_K@Dell.com
1078a226e00SRandy Dunlapconfig PCI_LABEL
1088a226e00SRandy Dunlap	def_bool y if (DMI || ACPI)
1098a226e00SRandy Dunlap	select NLS
110