Skip to contentSkip to conversation

ide-cris: don't override ide_register_hw() result

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

lore
Share & tools
lore
#0 lore raw

PATCH 7/21 ide-cris: don't override ide_register_hw() result

* Don't override ide_register_hw() result and check if there is a hwif available to use.

* MAX_HWIFS is user configurable nowadays so replace it by hard-coded value.

* Remove the comment about ide_hwifs[].

---
 drivers/ide/cris/ide-cris.c |    7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)
drivers/ide/cris/ide-cris.c +4 -3
Index: b/drivers/ide/cris/ide-cris.c
===================================================================
@@ -770,15 +770,16 @@ init_e100_ide (void)
 	/* the IDE control register is at ATA address 6, with CS1 active instead of CS0 */
 	ide_offsets[IDE_CONTROL_OFFSET] = cris_ide_reg_addr(6, 1, 0);
 
-	/* first fill in some stuff in the ide_hwifs fields */
+	for (h = 0; h < 4; h++) {
+		ide_hwif_t *hwif = NULL;
 
-	for(h = 0; h < MAX_HWIFS; h++) {
-		ide_hwif_t *hwif = &ide_hwifs[h];
 		ide_setup_ports(&hw, cris_ide_base_address(h),
 		                ide_offsets,
 		                0, 0, cris_ide_ack_intr,
 		                ide_default_irq(0));
 		ide_register_hw(&hw, NULL, 1, &hwif);
+		if (hwif == NULL)
+			continue;
 		hwif->mmio = 1;
 		hwif->chipset = ide_etrax100;
 		hwif->set_pio_mode = &cris_set_pio_mode;