This message is from the T13 list server.
Hale Landis wrote:
This message is from the T13 list server.
On Mon, 15 Nov 2004 11:22:24 -0700, Pat LaVarre wrote:
DRQ with ERR means ERR?
BSY=0 ERR=1 always means "the command ended with an error" - doesn't matter what DRQ or any other status bit says - except DF (Device Fault) overrides all status bits when BSY=0.
And if DRQ with ERR means ERR, why then SRST? SRST in reaction to an unexpected DRQ I understand - but in reaction to an unexpected ERR?
ATA tradition - whenever something strange happens try a Soft Reset before retrying the command.
It should be noted in this discussion that I assume we are only talking about PATA. SATA is a different interface that does not
What you describe for PATA is usually OK for SATA as well, for device errors.
My only worry with SRST is the potential for stupid ATA devices losing unflushed cache data.
conform to some of the most basic PATA rules and traditions - SATA is mis-named - it really isn't ATA and it should not be documented in the same standard with PATA - ATA/ATAPI-7 is a major %&*$% by T13.
Oh, pooh. It's just "ATA version 2", that's all. IMHO, ATA was -bound- to evolve from a signals-and-registers protocol into an abstract packetized command set.
However, I actually agree with you in one respect: PATA standards should be left as-is, and ATA version 2 (a.k.a. SATA) should be "forked" from the current PATA standards, into a separate-but-friendly standards track.
What does that mean in terms of today, and ATA/ATAPI-7?
Semantic (marketing) games, and nothing more: do "something" to emphasize that ATA/ATAPI-7 is not simply a new PATA standard, but a more dramatic departure from the past.
In Linux, one of the things we value is the ability to evolve as needs dictate. I like the current direction of [S]ATA for similar reasons: it is evolving to meet current needs.
Emphasizing that PATA and SATA are two different beasts would serve my goal of seeing that ATA has _freedom to evolve_ as new and spiffy technology is created.
Jeff
