lkml.org 
[lkml]   [2004]   [Nov]   [5]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH 2/3] WIN_* -> ATA_CMD_* conversion: update WIN_* users to use ATA_CMD_*
On Fri, 5 Nov 2004 19:23:14 -0800, Chris Wedgwood <cw@f00f.org> wrote:
> @@ -434,7 +434,7 @@
> try_to_flush_leftover_data(drive);
> if (hwif->INB(IDE_STATUS_REG) & (BUSY_STAT|DRQ_STAT)) {
> /* force an abort */
> - hwif->OUTB(WIN_IDLEIMMEDIATE,IDE_COMMAND_REG);
> + hwif->OUTB(ATA_CMD_IDLEIMMEDIATE,IDE_COMMAND_REG);
> }
> if (rq->errors >= ERROR_MAX || blk_noretry_request(rq))
> DRIVER(drive)->end_request(drive, 0, 0);

Just a reminder, this error recovery doesn't work on many modern hard
drives, and is a violation of all ATA specs after ATA-2*. In
particular, most Maxtor and Western Digital Drives will not recover
from errors with this command sequence. The preferred error recovery
is to do a reset followed by a set features, because that is what
Windows does (as told to me by a drive vendor). I've tested the
reset/set features method of error recovery and it works on all the
drives I've tried. I have not tried it on any older drives, or any
other types of ATAPI devices.

Ross

*Most drives set the ATA-2 support flag, so technically they are in
violation of the ATA spec if they don't support this error recovery,
but the drive vendors don't care, they just make sure it works with
windows.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-03-22 14:07    [W:0.153 / U:0.572 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site