11da177e4SLinus Torvalds# 21da177e4SLinus Torvalds# PCI configuration 31da177e4SLinus Torvalds# 43a9ad0b4SYinghai Luconfig PCI_BUS_ADDR_T_64BIT 5e02a653eSHelge Deller def_bool y if (ARCH_DMA_ADDR_T_64BIT || 64BIT) 63a9ad0b4SYinghai Lu depends on PCI 73a9ad0b4SYinghai Lu 81da177e4SLinus Torvaldsconfig PCI_MSI 91da177e4SLinus Torvalds bool "Message Signaled Interrupts (MSI and MSI-X)" 101da177e4SLinus Torvalds depends on PCI 1138b6a1cfSJiang Liu select GENERIC_MSI_IRQ 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 243878eaefSJiang Liuconfig PCI_MSI_IRQ_DOMAIN 253878eaefSJiang Liu bool 263878eaefSJiang Liu depends on PCI_MSI 273878eaefSJiang Liu select GENERIC_MSI_IRQ_DOMAIN 283878eaefSJiang Liu 291da177e4SLinus Torvaldsconfig PCI_DEBUG 301da177e4SLinus Torvalds bool "PCI Debugging" 311da177e4SLinus Torvalds depends on PCI && DEBUG_KERNEL 321da177e4SLinus Torvalds help 331da177e4SLinus Torvalds Say Y here if you want the PCI core to produce a bunch of debug 341da177e4SLinus Torvalds messages to the system log. Select this if you are having a 351da177e4SLinus Torvalds problem with PCI support and want to see more of what is going on. 361da177e4SLinus Torvalds 371da177e4SLinus Torvalds When in doubt, say N. 381da177e4SLinus Torvalds 39b07f2ebcSYinghai Luconfig PCI_REALLOC_ENABLE_AUTO 40b07f2ebcSYinghai Lu bool "Enable PCI resource re-allocation detection" 41b07f2ebcSYinghai Lu depends on PCI 42b07f2ebcSYinghai Lu help 43b07f2ebcSYinghai Lu Say Y here if you want the PCI core to detect if PCI resource 44b07f2ebcSYinghai Lu re-allocation needs to be enabled. You can always use pci=realloc=on 45b07f2ebcSYinghai Lu or pci=realloc=off to override it. Note this feature is a no-op 46b07f2ebcSYinghai Lu unless PCI_IOV support is also enabled; in that case it will 47b07f2ebcSYinghai Lu automatically re-allocate PCI resources if SR-IOV BARs have not 48b07f2ebcSYinghai Lu been allocated by the BIOS. 49b07f2ebcSYinghai Lu 50b07f2ebcSYinghai Lu When in doubt, say N. 51b07f2ebcSYinghai Lu 52c70e0d9dSChris Wrightconfig PCI_STUB 53c70e0d9dSChris Wright tristate "PCI Stub driver" 54c70e0d9dSChris Wright depends on PCI 55c70e0d9dSChris Wright help 56c70e0d9dSChris Wright Say Y or M here if you want be able to reserve a PCI device 57c70e0d9dSChris Wright when it is going to be assigned to a guest operating system. 58c70e0d9dSChris Wright 59c70e0d9dSChris Wright When in doubt, say N. 60c70e0d9dSChris Wright 61956a9202SRyan Wilsonconfig XEN_PCIDEV_FRONTEND 62956a9202SRyan Wilson tristate "Xen PCI Frontend" 63956a9202SRyan Wilson depends on PCI && X86 && XEN 64956a9202SRyan Wilson select PCI_XEN 65fce263c1SKonrad Rzeszutek Wilk select XEN_XENBUS_FRONTEND 66956a9202SRyan Wilson default y 67956a9202SRyan Wilson help 68956a9202SRyan Wilson The PCI device frontend driver allows the kernel to import arbitrary 69956a9202SRyan Wilson PCI devices from a PCI backend to support PCI driver domains. 70956a9202SRyan Wilson 718b955b0dSEric W. Biedermanconfig HT_IRQ 728b955b0dSEric W. Biederman bool "Interrupts on hypertransport devices" 738b955b0dSEric W. Biederman default y 742f600025SJiang Liu depends on PCI && X86_LOCAL_APIC 758b955b0dSEric W. Biederman help 768b955b0dSEric W. Biederman This allows native hypertransport devices to use interrupts. 778b955b0dSEric W. Biederman 788b955b0dSEric W. Biederman If unsure say Y. 79d1b054daSYu Zhao 80db3c33c6SJoerg Roedelconfig PCI_ATS 81db3c33c6SJoerg Roedel bool 82db3c33c6SJoerg Roedel 83d1b054daSYu Zhaoconfig PCI_IOV 84d1b054daSYu Zhao bool "PCI IOV support" 85d1b054daSYu Zhao depends on PCI 86db3c33c6SJoerg Roedel select PCI_ATS 87d1b054daSYu Zhao help 88d1b054daSYu Zhao I/O Virtualization is a PCI feature supported by some devices 89d1b054daSYu Zhao which allows them to create virtual devices which share their 90d1b054daSYu Zhao physical resources. 91d1b054daSYu Zhao 92d1b054daSYu Zhao If unsure, say N. 93204d49a5SBjorn Helgaas 94c320b976SJoerg Roedelconfig PCI_PRI 95c320b976SJoerg Roedel bool "PCI PRI support" 96c54420d3SJoerg Roedel depends on PCI 97c320b976SJoerg Roedel select PCI_ATS 98c320b976SJoerg Roedel help 99c320b976SJoerg Roedel PRI is the PCI Page Request Interface. It allows PCI devices that are 100c320b976SJoerg Roedel behind an IOMMU to recover from page faults. 101c320b976SJoerg Roedel 102c320b976SJoerg Roedel If unsure, say N. 103c320b976SJoerg Roedel 104086ac11fSJoerg Roedelconfig PCI_PASID 105086ac11fSJoerg Roedel bool "PCI PASID support" 106086ac11fSJoerg Roedel depends on PCI 107086ac11fSJoerg Roedel select PCI_ATS 108086ac11fSJoerg Roedel help 109086ac11fSJoerg Roedel Process Address Space Identifiers (PASIDs) can be used by PCI devices 110086ac11fSJoerg Roedel to access more than one IO address space at the same time. To make 111086ac11fSJoerg Roedel use of this feature an IOMMU is required which also supports PASIDs. 112086ac11fSJoerg Roedel Select this option if you have such an IOMMU and want to compile the 113086ac11fSJoerg Roedel driver for it into your kernel. 114086ac11fSJoerg Roedel 115086ac11fSJoerg Roedel If unsure, say N. 116086ac11fSJoerg Roedel 1178a226e00SRandy Dunlapconfig PCI_LABEL 1188a226e00SRandy Dunlap def_bool y if (DMI || ACPI) 1198a226e00SRandy Dunlap select NLS 12045361a4fSThomas Petazzoni 121*4daace0dSJake Oshinsconfig PCI_HYPERV 122*4daace0dSJake Oshins tristate "Hyper-V PCI Frontend" 123*4daace0dSJake Oshins depends on PCI && X86 && HYPERV && PCI_MSI && PCI_MSI_IRQ_DOMAIN && X86_64 124*4daace0dSJake Oshins help 125*4daace0dSJake Oshins The PCI device frontend driver allows the kernel to import arbitrary 126*4daace0dSJake Oshins PCI devices from a PCI backend to support PCI driver domains. 127*4daace0dSJake Oshins 12845361a4fSThomas Petazzonisource "drivers/pci/host/Kconfig" 129