|
@@ -529,13 +529,6 @@ void ide_unregister(unsigned int index)
|
|
|
free_irq(hwif->irq, hwgroup);
|
|
|
|
|
|
spin_lock_irq(&ide_lock);
|
|
|
- /*
|
|
|
- * Note that we only release the standard ports,
|
|
|
- * and do not even try to handle any extra ports
|
|
|
- * allocated for weird IDE interface chipsets.
|
|
|
- */
|
|
|
- ide_hwif_release_regions(hwif);
|
|
|
-
|
|
|
/*
|
|
|
* Remove us from the hwgroup, and free
|
|
|
* the hwgroup if we were the only member
|
|
@@ -590,6 +583,13 @@ void ide_unregister(unsigned int index)
|
|
|
hwif->extra_ports = 0;
|
|
|
}
|
|
|
|
|
|
+ /*
|
|
|
+ * Note that we only release the standard ports,
|
|
|
+ * and do not even try to handle any extra ports
|
|
|
+ * allocated for weird IDE interface chipsets.
|
|
|
+ */
|
|
|
+ ide_hwif_release_regions(hwif);
|
|
|
+
|
|
|
/* copy original settings */
|
|
|
tmp_hwif = *hwif;
|
|
|
|