alistair23-linux/drivers/pci
Ram Pai bbef98ab0f PCI: defer enablement of SRIOV BARS
All the PCI BARs of a device are enabled when the device is enabled
using pci_enable_device().  This unnecessarily enables SRIOV BARs of the
device.

On some platforms, which do not support SRIOV as yet, the
pci_enable_device() fails to enable the device if its SRIOV BARs are not
allocated resources correctly.

The following patch fixes the above problem. The SRIOV BARs are now
enabled when IOV capability of the device is enabled in sriov_enable().

NOTE: Note, there is subtle change in the pci_enable_device() API.  Any
driver that depends on SRIOV BARS to be enabled in pci_enable_device()
can fail.

The patch has been touch tested on power and x86 platform.

Tested-by: Michael Wang <wangyun@linux.vnet.ibm.com>
Signed-off-by: Ram Pai <linuxram@us.ibm.com>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
2011-12-05 10:30:22 -08:00
..
hotplug Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci 2011-11-23 14:58:46 -08:00
pcie PCI / PM: Extend PME polling to all PCI devices 2011-10-14 09:05:31 -07:00
.gitignore
access.c PCI: handle positive error codes 2011-05-10 15:43:36 -07:00
ats.c pci: Fix files needing export.h for EXPORT_SYMBOL/THIS_MODULE 2011-10-31 19:31:22 -04:00
bus.c PCI/sysfs: move bus cpuaffinity to class dev_attrs 2011-05-21 12:17:13 -07:00
hotplug-pci.c pci: Fix files needing export.h for EXPORT_SYMBOL/THIS_MODULE 2011-10-31 19:31:22 -04:00
hotplug.c
htirq.c pci: Fix files needing export.h for EXPORT_SYMBOL/THIS_MODULE 2011-10-31 19:31:22 -04:00
ioapic.c pci: Fix files needing export.h for EXPORT_SYMBOL/THIS_MODULE 2011-10-31 19:31:22 -04:00
iov.c PCI: defer enablement of SRIOV BARS 2011-12-05 10:30:22 -08:00
irq.c pci: Fix files needing export.h for EXPORT_SYMBOL/THIS_MODULE 2011-10-31 19:31:22 -04:00
Kconfig Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci 2011-11-23 14:58:46 -08:00
Makefile PCI: Move ATS implementation into own file 2011-10-14 09:05:33 -07:00
msi.c pci: Fix files needing export.h for EXPORT_SYMBOL/THIS_MODULE 2011-10-31 19:31:22 -04:00
msi.h
of.c PCI: OF: Don't crash when bridge parent is NULL. 2011-08-19 08:51:37 -07:00
pci-acpi.c PCI / PM: Remove unnecessary error variable from acpi_dev_run_wake() 2011-10-14 09:05:32 -07:00
pci-driver.c PCI / PM: Detect early wakeup in pci_pm_prepare() 2011-07-06 10:51:40 +02:00
pci-label.c pci-label.c: size_t misspelled as mode_t 2011-07-26 13:01:09 -04:00
pci-stub.c
pci-sysfs.c pci: Fix files needing export.h for EXPORT_SYMBOL/THIS_MODULE 2011-10-31 19:31:22 -04:00
pci.c PCI: defer enablement of SRIOV BARS 2011-12-05 10:30:22 -08:00
pci.h PCI: make cardbus-bridge resources optional 2011-08-01 11:50:40 -07:00
probe.c PCI: Clean-up MPS debug output 2011-10-27 12:45:44 -07:00
proc.c
quirks.c pci: Fix files needing export.h for EXPORT_SYMBOL/THIS_MODULE 2011-10-31 19:31:22 -04:00
remove.c PCI/sysfs: move bus cpuaffinity to class dev_attrs 2011-05-21 12:17:13 -07:00
rom.c pci: Fix files needing export.h for EXPORT_SYMBOL/THIS_MODULE 2011-10-31 19:31:22 -04:00
search.c
setup-bus.c PCI: Make pci_setup_bridge() non-static for use by arch code 2011-10-14 09:05:29 -07:00
setup-irq.c PCI: Make the struct pci_dev * argument of pci_fixup_irqs const. 2011-07-22 08:26:06 -07:00
setup-res.c pci: Fix files needing export.h for EXPORT_SYMBOL/THIS_MODULE 2011-10-31 19:31:22 -04:00
slot.c pci: add module.h to files implicitly relying on its presence. 2011-10-31 19:31:23 -04:00
syscall.c
vpd.c pci: Fix files needing export.h for EXPORT_SYMBOL/THIS_MODULE 2011-10-31 19:31:22 -04:00
xen-pcifront.c Merge branches 'stable/drivers-3.2', 'stable/drivers.bugfixes-3.2' and 'stable/pci.fixes-3.2' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen 2011-10-25 09:19:36 +02:00