linux/drivers/pci/pcie
Rafael J. Wysocki b43d451385 PCI/PCIe portdrv: Fix allocation of interrupts
If MSI-X interrupt mode is used by the PCI Express port driver, too
many vectors are allocated and it is not ensured that the right
vectors will be used for the right services.  Namely, the PCI Express
specification states that both PCI Express native PME and PCI Express
hotplug will always use the same MSI or MSI-X message for signalling
interrupts, which implies that the same vector will be used by both
of them.  Also, the VC service does not use interrupts at all.
Moreover, is not clear which of the vectors allocated by
pci_enable_msix() in the current code will be used for PME and
hotplug and which of them will be used for AER if all of these
services are configured.

For these reasons, rework the allocation of interrupts for PCI
Express ports so that if MSI-X are enabled, the right vectors will be
used for the right purposes.

Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
Reviewed-by: Hidetoshi Seto <seto.hidetoshi@jp.fujitsu.com>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
2009-03-19 19:29:25 -07:00
..
aer PCI: PCIe portdrv: Remove struct pcie_port_service_id 2009-03-19 19:29:23 -07:00
aspm.c PCI: properly clean up ASPM link state on device remove 2009-02-04 16:58:40 -08:00
Kconfig PCI Express ASPM support should default to 'No' 2008-04-23 15:41:14 -07:00
Makefile PCI: add PCI Express ASPM support 2008-04-20 21:47:03 -07:00
portdrv.h PCI/PCIe portdrv: Fix allocation of interrupts 2009-03-19 19:29:25 -07:00
portdrv_bus.c PCI: PCIe portdrv: Remove struct pcie_port_service_id 2009-03-19 19:29:23 -07:00
portdrv_core.c PCI/PCIe portdrv: Fix allocation of interrupts 2009-03-19 19:29:25 -07:00
portdrv_pci.c PCI: PCIe portdrv: Remove unnecessary function 2009-03-19 19:29:22 -07:00