]> pilppa.com Git - linux-2.6-omap-h63xx.git/commitdiff
Blackfin pata-bf54x driver: should cover all possible interrupt sources
authorSonic Zhang <sonic.zhang@analog.com>
Wed, 30 Jan 2008 08:43:27 +0000 (16:43 +0800)
committerJeff Garzik <jeff@garzik.org>
Fri, 1 Feb 2008 17:26:42 +0000 (12:26 -0500)
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>
drivers/ata/pata_bf54x.c

index d86970add683e92a2af6172e29a0c31af6b6a672..d66f7733b79658d832ba97eeac739775f8640dc7 100644 (file)
@@ -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);