#
# PCI configuration
#
config ARCH_SUPPORTS_MSI
	bool
	default n

config PCI_MSI
	bool "Message Signaled Interrupts (MSI and MSI-X)"
	depends on PCI
	depends on ARCH_SUPPORTS_MSI
	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_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_GUESTDEV
	bool "PCI Device Reservation for Passthrough"
	depends on PCI && ACPI && XEN
	default y
	help
	  Say Y here if you want to reserve PCI device for passthrough.

config PCI_IOMULTI
	tristate "PCI Device IO Multiplex for Passthrough"
	depends on PCI && ACPI && XEN
	default y
	help
	  Say Y here if you need io multiplexing.

config PCI_RESERVE
	bool "PCI IO/MEMORY space reserve"
	depends on PCI && XEN_PRIVILEGED_GUEST
	default y
	help
	  Say Y here if you need PCI IO/MEMORY space reserve

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 PARAVIRT_XEN_PCIDEV_FRONTEND
        tristate "Xen PCI Frontend"
        depends on PCI && X86 && PARAVIRT_XEN
        select HOTPLUG
        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 XEN_PCIDEV_FRONTEND
	def_bool y
	prompt "Xen PCI Frontend" if X86_64 && !XEN_UNPRIVILEGED_GUEST
	depends on PCI && XEN && (PCI_GOXEN_FE || PCI_GOANY || X86_64)
	select HOTPLUG
	help
	  The PCI device frontend driver allows the kernel to import arbitrary
	  PCI devices from a PCI backend to support PCI driver domains.

config XEN_PCIDEV_FE_DEBUG
        bool "Xen PCI Frontend debugging"
        depends on XEN_PCIDEV_FRONTEND || (PARAVIRT_XEN_PCIDEV_FRONTEND && PCI_DEBUG)
	help
	  Say Y here if you want the Xen PCI frontend to produce a bunch of debug
	  messages to the system log.  Select this if you are having a
	  problem with Xen PCI frontend support and want to see more of what is
	  going on.

	  When in doubt, say N.

config HT_IRQ
	bool "Interrupts on hypertransport devices"
	default y
	depends on PCI && X86_LOCAL_APIC && X86_IO_APIC && !XEN
	help
	   This allows native hypertransport devices to use interrupts.

	   If unsure say Y.

config PCI_IOV
	bool "PCI IOV support"
	depends on PCI
	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_IOAPIC
	bool
	depends on PCI && !XEN
	depends on ACPI
	depends on HOTPLUG
	default y

config PCI_LABEL
	def_bool y if (DMI || ACPI)
	select NLS
