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 (commitfab59375b9) 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 commitf31f0cc2f0. ] Cc: Chuck Ebbert <cebbert@redhat.com> Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
b2c3c20bcd
commit
8e76199aa2
@@ -598,6 +598,9 @@ u8 eighty_ninty_three (ide_drive_t *drive)
|
||||
if(HWIF(drive)->udma_four == 0)
|
||||
return 0;
|
||||
|
||||
printk(KERN_INFO "%s: hw_config=%04x\n",
|
||||
drive->name, drive->id->hw_config);
|
||||
|
||||
/* Check for SATA but only if we are ATA5 or higher */
|
||||
if (drive->id->hw_config == 0 && (drive->id->major_rev_num & 0x7FE0))
|
||||
return 1;
|
||||
@@ -607,8 +610,14 @@ u8 eighty_ninty_three (ide_drive_t *drive)
|
||||
if(!(drive->id->hw_config & 0x4000))
|
||||
return 0;
|
||||
#endif /* CONFIG_IDEDMA_IVB */
|
||||
/*
|
||||
* FIXME: enable this after fixing master/slave IDENTIFY order,
|
||||
* also ignore the result if the slave device is pre-ATA3 one
|
||||
*/
|
||||
#if 0
|
||||
if (!(drive->id->hw_config & 0x2000))
|
||||
return 0;
|
||||
#endif
|
||||
return 1;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user