Skip to contentSkip to conversation

delkin_cb: fix resources handling

PATCH New Bartlomiej Zolnierkiewicz 1 participant 1 message Feb 20, 2008 libata

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 delkin_cb: fix resources handling

Tell IDE layer to not manage resources by setting hwif->mmio flag.

---
 drivers/ide/pci/delkin_cb.c |    4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)
drivers/ide/pci/delkin_cb.c +3 -1
Index: b/drivers/ide/pci/delkin_cb.c
===================================================================
@@ -71,7 +71,6 @@ delkin_cb_probe (struct pci_dev *dev, co
 		if (setup[i])
 			outb(setup[i], base + i);
 	}
-	pci_release_regions(dev);	/* IDE layer handles regions itself */
 
 	memset(&hw, 0, sizeof(hw));
 	ide_std_init_ports(&hw, base + 0x10, base + 0x1e);
@@ -90,6 +89,7 @@ delkin_cb_probe (struct pci_dev *dev, co
 		ide_init_port_data(hwif, i);
 
 	ide_init_port_hw(hwif, &hw);
+	hwif->mmio = 1;
 	hwif->quirkproc = &ide_undecoded_slave;
 
 	idx[0] = i;
@@ -110,6 +110,7 @@ delkin_cb_probe (struct pci_dev *dev, co
 
 out_disable:
 	printk(KERN_ERR "delkin_cb: no IDE devices found\n");
+	pci_release_regions(dev);
 	pci_disable_device(dev);
 	return -ENODEV;
 }
@@ -122,6 +123,7 @@ delkin_cb_remove (struct pci_dev *dev)
 	if (hwif)
 		ide_unregister(hwif->index);
 
+	pci_release_regions(dev);
 	pci_disable_device(dev);
 }