Re: ata_sff_drain_fifo

From: Alan Cox
Date: Wed Aug 18 2010 - 07:28:39 EST


> so I guess when status is 0xD0, ATA_DRQ is not set but ATA_BUSY is.
> It would explain why in my case it doesn't drain anything before trying to reset.
>
> Would it be of any interest to drain the fifo also when the ATA_BUSY flag is on, not only the ATA_DRQ ?

If the drive has the busy flag set it is busy, all we can do is wait for
it and if that fails try to reset it. The FIFO drain handles a specific
case where the two ends disagree about the amount of data expected, and
often lets us avoid a reset.

Alan
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/