aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSonic Zhang <sonic.zhang@analog.com>2008-01-30 03:43:27 -0500
committerJeff Garzik <jeff@garzik.org>2008-02-01 12:26:42 -0500
commit30d849c95f0598309ca6451900b1fd0d2c0384e6 (patch)
tree04eae76a76644f9d0b88b5d052baefac70d58b89
parentf9204112586c1b9b5a5e5979d285e58a349774e0 (diff)
Blackfin pata-bf54x driver: should cover all possible interrupt sources
Signed-off-by: Sonic Zhang <sonic.zhang@analog.com> Signed-off-by: Bryan Wu <bryan.wu@analog.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
-rw-r--r--drivers/ata/pata_bf54x.c12
1 files changed, 5 insertions, 7 deletions
diff --git a/drivers/ata/pata_bf54x.c b/drivers/ata/pata_bf54x.c
index d86970add683..d66f7733b796 100644
--- a/drivers/ata/pata_bf54x.c
+++ b/drivers/ata/pata_bf54x.c
@@ -1147,15 +1147,13 @@ static unsigned char bfin_bmdma_status(struct ata_port *ap)
1147 void __iomem *base = (void __iomem *)ap->ioaddr.ctl_addr; 1147 void __iomem *base = (void __iomem *)ap->ioaddr.ctl_addr;
1148 unsigned short int_status = ATAPI_GET_INT_STATUS(base); 1148 unsigned short int_status = ATAPI_GET_INT_STATUS(base);
1149 1149
1150 if (ATAPI_GET_STATUS(base) & (MULTI_XFER_ON|ULTRA_XFER_ON)) { 1150 if (ATAPI_GET_STATUS(base) & (MULTI_XFER_ON|ULTRA_XFER_ON))
1151 host_stat |= ATA_DMA_ACTIVE; 1151 host_stat |= ATA_DMA_ACTIVE;
1152 } 1152 if (int_status & (MULTI_DONE_INT|UDMAIN_DONE_INT|UDMAOUT_DONE_INT|
1153 if (int_status & (MULTI_DONE_INT|UDMAIN_DONE_INT|UDMAOUT_DONE_INT)) { 1153 ATAPI_DEV_INT))
1154 host_stat |= ATA_DMA_INTR; 1154 host_stat |= ATA_DMA_INTR;
1155 } 1155 if (int_status & (MULTI_TERM_INT|UDMAIN_TERM_INT|UDMAOUT_TERM_INT))
1156 if (int_status & (MULTI_TERM_INT|UDMAIN_TERM_INT|UDMAOUT_TERM_INT)) { 1156 host_stat |= ATA_DMA_ERR|ATA_DMA_INTR;
1157 host_stat |= ATA_DMA_ERR;
1158 }
1159 1157
1160 dev_dbg(ap->dev, "ATAPI: host_stat=0x%x\n", host_stat); 1158 dev_dbg(ap->dev, "ATAPI: host_stat=0x%x\n", host_stat);
1161 1159