summaryrefslogtreecommitdiffstats
path: root/drivers/ide/pci/pdc202xx_new.c
diff options
context:
space:
mode:
authorBartlomiej Zolnierkiewicz2007-12-12 23:31:58 +0100
committerBartlomiej Zolnierkiewicz2007-12-12 23:31:58 +0100
commiteadb6ecf761166aa55ad44f05b7a29b10ddaba34 (patch)
tree5b6233b8b10ebf5566189b89934bbfd12168ee7c /drivers/ide/pci/pdc202xx_new.c
parentide-cd: remove dead post_transform_command() (diff)
downloadkernel-qcow2-linux-eadb6ecf761166aa55ad44f05b7a29b10ddaba34.tar.gz
kernel-qcow2-linux-eadb6ecf761166aa55ad44f05b7a29b10ddaba34.tar.xz
kernel-qcow2-linux-eadb6ecf761166aa55ad44f05b7a29b10ddaba34.zip
pdc202xx_new: fix Promise TX4 support
In case of Promise TX4 the first PCI device is located at slot 1 and the second one is at slot 2 so the offset used by pci_get_slot() should be "+1" and not "+2". Thanks goes out to Markus Dietz for bugreport and testing this patch. Cc: Sergei Shtylyov <sshtylyov@ru.mvista.com> Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Diffstat (limited to 'drivers/ide/pci/pdc202xx_new.c')
-rw-r--r--drivers/ide/pci/pdc202xx_new.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/ide/pci/pdc202xx_new.c b/drivers/ide/pci/pdc202xx_new.c
index 4234efeba606..2b4f44e45a1a 100644
--- a/drivers/ide/pci/pdc202xx_new.c
+++ b/drivers/ide/pci/pdc202xx_new.c
@@ -482,8 +482,9 @@ static struct pci_dev * __devinit pdc20270_get_dev2(struct pci_dev *dev)
{
struct pci_dev *dev2;
- dev2 = pci_get_slot(dev->bus, PCI_DEVFN(PCI_SLOT(dev->devfn) + 2,
+ dev2 = pci_get_slot(dev->bus, PCI_DEVFN(PCI_SLOT(dev->devfn) + 1,
PCI_FUNC(dev->devfn)));
+
if (dev2 &&
dev2->vendor == dev->vendor &&
dev2->device == dev->device) {