]> bbs.cooldavid.org Git - net-next-2.6.git/commit - drivers/ata/libata-core.c
[PATCH] libata-dev: fix the device err check sequence (respin)
authorAlbert Lee <albertcc@tw.ibm.com>
Sat, 25 Mar 2006 10:11:12 +0000 (18:11 +0800)
committerJeff Garzik <jeff@garzik.org>
Wed, 29 Mar 2006 22:22:36 +0000 (17:22 -0500)
commit71601958f73b952281f2b02e16d1f11c99ee0a8b
tree87d7c55a27f0553f901b0c3ef4dfef792a3f946c
parent999bb6f4260f9499fdeab3f8fdcd8b9013eca39e
[PATCH] libata-dev: fix the device err check sequence (respin)

Current irq-pio checks ERR bit and stops on ERR before it does anything else.
This behavior doesn't look right.
The DRQ bit should take higher precedence than the ERR bit.

Changes:
- Let the HSM do the data transfer whenever the
  device asks for DRQ bit, even if the ERR bit is set.
- For DRQ=1 ERR=1, don't trust the data

Signed-off-by: Albert Lee <albertcc@tw.ibm.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
drivers/scsi/libata-core.c