[libata] ahci: Update for recent ->host_stop() API change
authorJeff Garzik <jgarzik@pobox.com>
Tue, 31 May 2005 15:53:57 +0000 (11:53 -0400)
committerJeff Garzik <jgarzik@pobox.com>
Tue, 31 May 2005 15:53:57 +0000 (11:53 -0400)
drivers/scsi/ahci.c

index ee53b22..eb7940a 100644 (file)
@@ -39,7 +39,7 @@
 #include <asm/io.h>
 
 #define DRV_NAME       "ahci"
-#define DRV_VERSION    "1.00"
+#define DRV_VERSION    "1.01"
 
 
 enum {
@@ -1086,8 +1086,6 @@ static void ahci_remove_one (struct pci_dev *pdev)
 
        have_msi = hpriv->have_msi;
        free_irq(host_set->irq, host_set);
-       host_set->ops->host_stop(host_set);
-       iounmap(host_set->mmio_base);
 
        for (i = 0; i < host_set->n_ports; i++) {
                ap = host_set->ports[i];
@@ -1096,12 +1094,14 @@ static void ahci_remove_one (struct pci_dev *pdev)
                scsi_host_put(ap->host);
        }
 
+       host_set->ops->host_stop(host_set);
+       kfree(host_set);
+
        if (have_msi)
                pci_disable_msi(pdev);
        else
                pci_intx(pdev, 0);
        pci_release_regions(pdev);
-       kfree(host_set);
        pci_disable_device(pdev);
        dev_set_drvdata(dev, NULL);
 }