From: Sonic Zhang Date: Wed, 30 Jan 2008 08:43:27 +0000 (+0800) Subject: Blackfin pata-bf54x driver: should cover all possible interrupt sources X-Git-Tag: v2.6.25-rc1~1079^2~2 X-Git-Url: http://pilppa.org/gitweb/?a=commitdiff_plain;h=30d849c95f0598309ca6451900b1fd0d2c0384e6;p=linux-2.6-omap-h63xx.git Blackfin pata-bf54x driver: should cover all possible interrupt sources Signed-off-by: Sonic Zhang Signed-off-by: Bryan Wu Signed-off-by: Jeff Garzik --- diff --git a/drivers/ata/pata_bf54x.c b/drivers/ata/pata_bf54x.c index d86970add68..d66f7733b79 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) void __iomem *base = (void __iomem *)ap->ioaddr.ctl_addr; unsigned short int_status = ATAPI_GET_INT_STATUS(base); - if (ATAPI_GET_STATUS(base) & (MULTI_XFER_ON|ULTRA_XFER_ON)) { + if (ATAPI_GET_STATUS(base) & (MULTI_XFER_ON|ULTRA_XFER_ON)) host_stat |= ATA_DMA_ACTIVE; - } - if (int_status & (MULTI_DONE_INT|UDMAIN_DONE_INT|UDMAOUT_DONE_INT)) { + if (int_status & (MULTI_DONE_INT|UDMAIN_DONE_INT|UDMAOUT_DONE_INT| + ATAPI_DEV_INT)) host_stat |= ATA_DMA_INTR; - } - if (int_status & (MULTI_TERM_INT|UDMAIN_TERM_INT|UDMAOUT_TERM_INT)) { - host_stat |= ATA_DMA_ERR; - } + if (int_status & (MULTI_TERM_INT|UDMAIN_TERM_INT|UDMAOUT_TERM_INT)) + host_stat |= ATA_DMA_ERR|ATA_DMA_INTR; dev_dbg(ap->dev, "ATAPI: host_stat=0x%x\n", host_stat);