ide: fix ide_register_hw() to check hwif->io_ports[]
PATCH 2/9 ide: fix ide_register_hw() to check hwif->io_ports[]
hwif->hw.io_ports[] and hwif->io_ports[] should be the same but "4drives" support and scc_pata host driver set only hwif->io_ports[].
To compensate for this check hwif->io_ports[] instead of hwif->hw.io_ports[] in ide_register_hw() (instead of fixing "4drives" and scc_pata because hwif->hw is to be removed).
Signed-off-by Bartlomiej Zolnierkiewicz <[email protected]>
--- drivers/ide/ide.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
drivers/ide/ide.c +2 -2
@@ -709,7 +709,7 @@ int ide_register_hw(hw_regs_t *hw, void do { for (index = 0; index < MAX_HWIFS; ++index) { hwif = &ide_hwifs[index]; - if (hwif->hw.io_ports[IDE_DATA_OFFSET] == hw->io_ports[IDE_DATA_OFFSET]) + if (hwif->io_ports[IDE_DATA_OFFSET] == hw->io_ports[IDE_DATA_OFFSET]) goto found; } for (index = 0; index < MAX_HWIFS; ++index) {
@@ -717,7 +717,7 @@ int ide_register_hw(hw_regs_t *hw, voidif (hwif->hold)continue ;if ((!hwif->present && !hwif->mate && !initializing) || - (!hwif->hw.io_ports[IDE_DATA_OFFSET ] && initializing)) + (!hwif->io_ports[IDE_DATA_OFFSET ] && initializing)) goto found; }for (index =0 ; index <MAX_HWIFS ; index++)