aboutsummaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
Diffstat (limited to 'drivers')
-rw-r--r--drivers/pci/pci.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/pci/pci.c b/drivers/pci/pci.c
index 3222f9022707..bd52ca4c2893 100644
--- a/drivers/pci/pci.c
+++ b/drivers/pci/pci.c
@@ -1374,9 +1374,9 @@ pci_get_interrupt_pin(struct pci_dev *dev, struct pci_dev **bridge)
1374 pin = dev->pin; 1374 pin = dev->pin;
1375 if (!pin) 1375 if (!pin)
1376 return -1; 1376 return -1;
1377 pin--; 1377
1378 while (dev->bus->self) { 1378 while (dev->bus->self) {
1379 pin = (pin + PCI_SLOT(dev->devfn)) % 4; 1379 pin = (((pin - 1) + PCI_SLOT(dev->devfn)) % 4) + 1;
1380 dev = dev->bus->self; 1380 dev = dev->bus->self;
1381 } 1381 }
1382 *bridge = dev; 1382 *bridge = dev;