Skip to contentSkip to conversation

ide: kill probe_hwif_init()

PATCH In review Bartlomiej Zolnierkiewicz 2 participants 2 messages Nov 18, 2007 – Dec 7, 2007 libata

lore
Share & tools
lore
#0 lore raw

PATCH 9/21 ide: kill probe_hwif_init()

There should be no functionality changes caused by this patch.

---
 drivers/ide/ide-probe.c |   38 +++++++++++++++++---------------------
 1 file changed, 17 insertions(+), 21 deletions(-)
drivers/ide/ide-probe.c +17 -21
Index: b/drivers/ide/ide-probe.c
===================================================================
@@ -855,25 +855,6 @@ static void probe_hwif(ide_hwif_t *hwif)
 	}
 }
 
-static int hwif_init(ide_hwif_t *hwif);
-static void hwif_register_devices(ide_hwif_t *hwif);
-
-static int probe_hwif_init(ide_hwif_t *hwif)
-{
-	probe_hwif(hwif);
-
-	if (!hwif_init(hwif)) {
-		printk(KERN_INFO "%s: failed to initialize IDE interface\n",
-				 hwif->name);
-		return -1;
-	}
-
-	if (hwif->present)
-		hwif_register_devices(hwif);
-
-	return 0;
-}
-
 #if MAX_HWIFS > 1
 /*
  * save_match() is used to simplify logic in init_irq() below.
@@ -1401,11 +1382,26 @@ EXPORT_SYMBOL_GPL(ideprobe_init);
 
 int ide_device_add(u8 idx[4])
 {
+	ide_hwif_t *hwif;
 	int i, rc = 0;
 
 	for (i = 0; i < 4; i++) {
-		if (idx[i] != 0xff)
-			rc |= probe_hwif_init(&ide_hwifs[idx[i]]);
+		if (idx[i] == 0xff)
+			continue;
+
+		hwif = &ide_hwifs[idx[i]];
+
+		probe_hwif(hwif);
+
+		if (hwif_init(hwif) == 0) {
+			printk(KERN_INFO "%s: failed to initialize IDE "
+					 "interface\n", hwif->name);
+			rc = -1;
+			continue;
+		}
+
+		if (hwif->present)
+			hwif_register_devices(hwif);
 	}
 
 	for (i = 0; i < 4; i++) {