summary refs log tree commit diff
path: root/drivers/pci/pci.c
diff options
context:
space:
mode:
authorBjorn Helgaas <bhelgaas@google.com>2013-11-06 16:26:48 -0700
committerBjorn Helgaas <bhelgaas@google.com>2013-11-06 16:26:48 -0700
commitc245f2422031fec447e4d9e35fb0ef0fd5e42ab9 (patch)
treeda3b30682401c44e3b8c55ec05e374c48ba5f14a /drivers/pci/pci.c
parent589a1b076ff9b6f84184507ec303229b3df20658 (diff)
parentf92d74c1f5afaff7cd1ea14ade8f1ba6b519e422 (diff)
downloadlinux-c245f2422031fec447e4d9e35fb0ef0fd5e42ab9.tar.gz
Merge branch 'pci/misc' into next
* pci/misc:
  PCI: Warn on driver probe return value greater than zero
  PCI: Drop warning about drivers that don't use pci_set_master()
  PCI: Workaround missing pci_set_master in pci drivers
  PCI: Update pcie_ports 'auto' behavior for non-ACPI platforms
Diffstat (limited to 'drivers/pci/pci.c')
-rw-r--r--drivers/pci/pci.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/drivers/pci/pci.c b/drivers/pci/pci.c
index 457f801fc49d..e485d92b3fa8 100644
--- a/drivers/pci/pci.c
+++ b/drivers/pci/pci.c
@@ -1155,8 +1155,12 @@ static void pci_enable_bridge(struct pci_dev *dev)
 
 	pci_enable_bridge(dev->bus->self);
 
-	if (pci_is_enabled(dev))
+	if (pci_is_enabled(dev)) {
+		if (!dev->is_busmaster)
+			pci_set_master(dev);
 		return;
+	}
+
 	retval = pci_enable_device(dev);
 	if (retval)
 		dev_err(&dev->dev, "Error enabling bridge (%d), continuing\n",