[PATCH] sis5513: Switch to pci refcounting
authorAlan Cox <alan@lxorguk.ukuu.org.uk>
Sun, 1 Oct 2006 06:27:30 +0000 (23:27 -0700)
committerLinus Torvalds <torvalds@g5.osdl.org>
Sun, 1 Oct 2006 07:39:20 +0000 (00:39 -0700)
Mirrors the drivers/ata version, hold a reference to the host bridge while we
are doing setup.

Signed-off-by: Alan Cox <alan@redhat.com>
Cc: Greg KH <greg@kroah.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
drivers/ide/pci/sis5513.c

index f03196c5db37a49c2290b46f0be030de7108fb47..92edf76bd7adb1880b677558a56bc7d1528c47b2 100644 (file)
@@ -739,7 +739,7 @@ static unsigned int __devinit init_chipset_sis5513 (struct pci_dev *dev, const c
 
        for (i = 0; i < ARRAY_SIZE(SiSHostChipInfo) && !chipset_family; i++) {
 
-               host = pci_find_device(PCI_VENDOR_ID_SI, SiSHostChipInfo[i].host_id, NULL);
+               host = pci_get_device(PCI_VENDOR_ID_SI, SiSHostChipInfo[i].host_id, NULL);
 
                if (!host)
                        continue;
@@ -753,6 +753,7 @@ static unsigned int __devinit init_chipset_sis5513 (struct pci_dev *dev, const c
                        if (hostrev >= 0x30)
                                chipset_family = ATA_100a;
                }
+               pci_dev_put(host);
        
                printk(KERN_INFO "SIS5513: %s %s controller\n",
                         SiSHostChipInfo[i].name, chipset_capability[chipset_family]);