|
@@ -1366,7 +1366,10 @@ static void ide_init_port(ide_hwif_t *hwif, unsigned int port,
|
|
|
/* 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);
|
|
@@ -1394,6 +1397,7 @@ int ide_device_add_all(u8 *idx, const struct ide_port_info *d)
|
|
|
mate = (i & 1) ? NULL : hwif;
|
|
|
|
|
|
ide_init_port(hwif, i & 1, d);
|
|
|
+ ide_port_cable_detect(hwif);
|
|
|
ide_port_init_devices(hwif);
|
|
|
}
|
|
|
|