|
@@ -320,11 +320,11 @@ static int __devinit agp_nvidia_probe(struct pci_dev *pdev,
|
|
|
u8 cap_ptr;
|
|
|
|
|
|
nvidia_private.dev_1 =
|
|
|
- pci_find_slot((unsigned int)pdev->bus->number, PCI_DEVFN(0, 1));
|
|
|
+ pci_get_bus_and_slot((unsigned int)pdev->bus->number, PCI_DEVFN(0, 1));
|
|
|
nvidia_private.dev_2 =
|
|
|
- pci_find_slot((unsigned int)pdev->bus->number, PCI_DEVFN(0, 2));
|
|
|
+ pci_get_bus_and_slot((unsigned int)pdev->bus->number, PCI_DEVFN(0, 2));
|
|
|
nvidia_private.dev_3 =
|
|
|
- pci_find_slot((unsigned int)pdev->bus->number, PCI_DEVFN(30, 0));
|
|
|
+ pci_get_bus_and_slot((unsigned int)pdev->bus->number, PCI_DEVFN(30, 0));
|
|
|
|
|
|
if (!nvidia_private.dev_1 || !nvidia_private.dev_2 || !nvidia_private.dev_3) {
|
|
|
printk(KERN_INFO PFX "Detected an NVIDIA nForce/nForce2 "
|
|
@@ -443,6 +443,9 @@ static int __init agp_nvidia_init(void)
|
|
|
static void __exit agp_nvidia_cleanup(void)
|
|
|
{
|
|
|
pci_unregister_driver(&agp_nvidia_pci_driver);
|
|
|
+ pci_dev_put(nvidia_private.dev_1);
|
|
|
+ pci_dev_put(nvidia_private.dev_2);
|
|
|
+ pci_dev_put(nvidia_private.dev_3);
|
|
|
}
|
|
|
|
|
|
module_init(agp_nvidia_init);
|