summaryrefslogtreecommitdiffstats
path: root/sys/dev/ata/ata-pci.c
diff options
context:
space:
mode:
authorsos <sos@FreeBSD.org>2003-10-20 13:45:11 +0000
committersos <sos@FreeBSD.org>2003-10-20 13:45:11 +0000
commit0468baeb3ff3a4ee3ae8e12e01a5a0e7b19e1856 (patch)
tree9654a6cd6ad6133f33528d0c76b037885adeb405 /sys/dev/ata/ata-pci.c
parentc0bf81d66c4a25ae4458634912fe16ff5c1e6a8b (diff)
downloadFreeBSD-src-0468baeb3ff3a4ee3ae8e12e01a5a0e7b19e1856.zip
FreeBSD-src-0468baeb3ff3a4ee3ae8e12e01a5a0e7b19e1856.tar.gz
Only return valid DMA error bits.
Diffstat (limited to 'sys/dev/ata/ata-pci.c')
-rw-r--r--sys/dev/ata/ata-pci.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/dev/ata/ata-pci.c b/sys/dev/ata/ata-pci.c
index 18fdfb1..fb950d9 100644
--- a/sys/dev/ata/ata-pci.c
+++ b/sys/dev/ata/ata-pci.c
@@ -430,7 +430,7 @@ ata_pci_dmastop(struct ata_channel *ch)
{
int error;
- error = ATA_IDX_INB(ch, ATA_BMSTAT_PORT);
+ error = ATA_IDX_INB(ch, ATA_BMSTAT_PORT) & ATA_BMSTAT_MASK;
ATA_IDX_OUTB(ch, ATA_BMCMD_PORT,
ATA_IDX_INB(ch, ATA_BMCMD_PORT) & ~ATA_BMCMD_START_STOP);
ATA_IDX_OUTB(ch, ATA_BMSTAT_PORT, ATA_BMSTAT_INTERRUPT | ATA_BMSTAT_ERROR);
OpenPOWER on IntegriCloud