pdc202xx_old: ignore "FIFO empty" bit in test_irq() method
authorSergei Shtylyov <sshtylyov@ru.mvista.com>
Wed, 14 Apr 2010 05:52:59 +0000 (05:52 +0000)
committerDavid S. Miller <davem@davemloft.net>
Fri, 23 Apr 2010 02:11:24 +0000 (19:11 -0700)
The driver takes into account not only the interrupt status bit but
also "FIFO empty" bit in its test_irq() method. This actually is a
superfluous check since for the DMA commands calling the
dma_test_irq() method further in the interrupt handler makes sure FIFO
is emptied.

Signed-off-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/ide/pdc202xx_old.c

index 42ad794dfaaef08589278617bbadc3962f28241d..3a35ec6193d25241312cdd03595a53cdf2999a49 100644 (file)
@@ -93,13 +93,13 @@ static int pdc202xx_test_irq(ide_hwif_t *hwif)
                 * bit 7: error, bit 6: interrupting,
                 * bit 5: FIFO full, bit 4: FIFO empty
                 */
-               return ((sc1d & 0x50) == 0x50) ? 1 : 0;
+               return (sc1d & 0x40) ? 1 : 0;
        } else  {
                /*
                 * bit 3: error, bit 2: interrupting,
                 * bit 1: FIFO full, bit 0: FIFO empty
                 */
-               return ((sc1d & 0x05) == 0x05) ? 1 : 0;
+               return (sc1d & 0x04) ? 1 : 0;
        }
 }