diff options
Diffstat (limited to 'drivers/scsi')
-rw-r--r-- | drivers/scsi/ahci.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/drivers/scsi/ahci.c b/drivers/scsi/ahci.c index ee53b227c01e..eb7940aba400 100644 --- a/drivers/scsi/ahci.c +++ b/drivers/scsi/ahci.c | |||
@@ -39,7 +39,7 @@ | |||
39 | #include <asm/io.h> | 39 | #include <asm/io.h> |
40 | 40 | ||
41 | #define DRV_NAME "ahci" | 41 | #define DRV_NAME "ahci" |
42 | #define DRV_VERSION "1.00" | 42 | #define DRV_VERSION "1.01" |
43 | 43 | ||
44 | 44 | ||
45 | enum { | 45 | enum { |
@@ -1086,8 +1086,6 @@ static void ahci_remove_one (struct pci_dev *pdev) | |||
1086 | 1086 | ||
1087 | have_msi = hpriv->have_msi; | 1087 | have_msi = hpriv->have_msi; |
1088 | free_irq(host_set->irq, host_set); | 1088 | free_irq(host_set->irq, host_set); |
1089 | host_set->ops->host_stop(host_set); | ||
1090 | iounmap(host_set->mmio_base); | ||
1091 | 1089 | ||
1092 | for (i = 0; i < host_set->n_ports; i++) { | 1090 | for (i = 0; i < host_set->n_ports; i++) { |
1093 | ap = host_set->ports[i]; | 1091 | ap = host_set->ports[i]; |
@@ -1096,12 +1094,14 @@ static void ahci_remove_one (struct pci_dev *pdev) | |||
1096 | scsi_host_put(ap->host); | 1094 | scsi_host_put(ap->host); |
1097 | } | 1095 | } |
1098 | 1096 | ||
1097 | host_set->ops->host_stop(host_set); | ||
1098 | kfree(host_set); | ||
1099 | |||
1099 | if (have_msi) | 1100 | if (have_msi) |
1100 | pci_disable_msi(pdev); | 1101 | pci_disable_msi(pdev); |
1101 | else | 1102 | else |
1102 | pci_intx(pdev, 0); | 1103 | pci_intx(pdev, 0); |
1103 | pci_release_regions(pdev); | 1104 | pci_release_regions(pdev); |
1104 | kfree(host_set); | ||
1105 | pci_disable_device(pdev); | 1105 | pci_disable_device(pdev); |
1106 | dev_set_drvdata(dev, NULL); | 1106 | dev_set_drvdata(dev, NULL); |
1107 | } | 1107 | } |