Skip to contentSkip to conversation

ide: revert "ide: fix drive side 80c cable check, take 2" for now

PATCH In review Bartlomiej Zolnierkiewicz 2 participants 2 messages Mar 20, 2007 – Mar 21, 2007 libata

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 ide: revert "ide: fix drive side 80c cable check, take 2" for now

[PATCH] ide: revert "ide: fix drive side 80c cable check, take 2" for now

"ide: fix drive side 80c cable check, take 2" patch from Tejun Heo (commit fab59375b9543f84d1714f7dd00f5d11e531bd3e) fixed 80c bit test (bit13 of word93) but we also need to fix master/slave IDENTIFY order (slave device should be probed first in order to make it release PDIAG- signal) and we should also check for pre-ATA3 slave devices (which may not release PDIAG- signal).

[ Unfortunately the fact that IDE driver doesn't reset devices itself helps
only a bit as it seems that some BIOS-es reset ATA devices after programming the chipset, some BIOS-es can be set to not probe/configure selected devices, there may be no BIOS in case of add-on cards etc. ]

Since we are quite late in the release cycle and the required changes will affect a lot of systems just revert the fix for now.

[ Please also see libata commit f31f0cc2f0b7527072d94d02da332d9bb8d7d94c. ]

Thanks goes out to Fernando Mitio Yamada for reporting the problem and patiently testing patches.

---

 drivers/ide/ide-iops.c |    8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)
drivers/ide/ide-iops.c +6 -2
Index: b/drivers/ide/ide-iops.c
===================================================================
@@ -583,8 +583,12 @@ u8 eighty_ninty_three (ide_drive_t *driv
 	if(!(drive->id->hw_config & 0x4000))
 		return 0;
 #endif /* CONFIG_IDEDMA_IVB */
-	if (!(drive->id->hw_config & 0x2000))
-		return 0;
+	/*
+	 * FIXME:
+	 * - change master/slave IDENTIFY order
+	 * - force bit13 (80c cable present) check
+	 *   (unless the slave device is pre-ATA3)
+	 */
 	return 1;
 }
 
#1 lore raw
Quoted 16 lines · Bartlomiej Zolnierkiewicz

[PATCH] ide: revert "ide: fix drive side 80c cable check, take 2" for now

"ide: fix drive side 80c cable check, take 2" patch from Tejun Heo (commit fab59375b9543f84d1714f7dd00f5d11e531bd3e) fixed 80c bit test (bit13 of word93) but we also need to fix master/slave IDENTIFY order (slave device should be probed first in order to make it release PDIAG- signal) and we should also check for pre-ATA3 slave devices (which may not release PDIAG- signal).

[ Unfortunately the fact that IDE driver doesn't reset devices itself helps
only a bit as it seems that some BIOS-es reset ATA devices after programming the chipset, some BIOS-es can be set to not probe/configure selected devices, there may be no BIOS in case of add-on cards etc. ]

Since we are quite late in the release cycle and the required changes will affect a lot of systems just revert the fix for now.

Quoted 8 lines

[ Please also see libata commit f31f0cc2f0b7527072d94d02da332d9bb8d7d94c. ]

Thanks goes out to Fernando Mitio Yamada for reporting the problem and patiently testing patches.

Never suspected it could cause this much problem. :-(

Signature · 1 line
tejun