libata: correct handling of TSS DVD
authorAlan Cox <[email protected]>
Mon, 14 Jan 2008 09:06:40 +0000 (01:06 -0800)
committerJeff Garzik <[email protected]>
Tue, 15 Jan 2008 21:35:21 +0000 (16:35 -0500)
Devices that misreport the validity bit for word 93 look like SATA.  If
they are on the blacklist then we must not test for SATA but assume 40 wire
in the 40 wire case (The TSSCorp reports 80 wire on SATA it seems!)

Signed-off-by: Alan Cox <[email protected]>
Cc: Tejun Heo <[email protected]>
Cc: Jeff Garzik <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Jeff Garzik <[email protected]>
include/linux/ata.h

index 72ab80801ef61d3f82c3a3cb7e980a2ca6c0f275..e672e80202a8f451c6ccd6b13808d926b4765dc0 100644 (file)
@@ -554,8 +554,6 @@ static inline int ata_drive_40wire(const u16 *dev_id)
 
 static inline int ata_drive_40wire_relaxed(const u16 *dev_id)
 {
-       if (ata_id_is_sata(dev_id))
-               return 0;       /* SATA */
        if ((dev_id[93] & 0x2000) == 0x2000)
                return 0;       /* 80 wire */
        return 1;