From: Bartlomiej Zolnierkiewicz Subject: [PATCH] ide: factor out cable detection from ide_init_port() * Factor out cable detection from ide_init_port() to ide_port_cable_detect(). * Move ide_port_cable_detect() call to ide_device_add_all(). Acked-by: Sergei Shtylyov Signed-off-by: Bartlomiej Zolnierkiewicz --- drivers/ide/ide-probe.c | 4 ++++ 1 file changed, 4 insertions(+) Index: b/drivers/ide/ide-probe.c =================================================================== --- a/drivers/ide/ide-probe.c +++ b/drivers/ide/ide-probe.c @@ -1364,7 +1364,10 @@ static void ide_init_port(ide_hwif_t *hw /* call chipset specific routine for each enabled port */ if (d->init_hwif) d->init_hwif(hwif); +} +static void ide_port_cable_detect(ide_hwif_t *hwif) +{ if (hwif->cable_detect && (hwif->ultra_mask & 0x78)) { if (hwif->cbl != ATA_CBL_PATA40_SHORT) hwif->cbl = hwif->cable_detect(hwif); @@ -1392,6 +1395,7 @@ int ide_device_add_all(u8 *idx, const st mate = (i & 1) ? NULL : hwif; ide_init_port(hwif, i & 1, d); + ide_port_cable_detect(hwif); ide_port_init_devices(hwif); }