staging: comedi: addi_apci_3501: remove "magic" numbers in apci3501_interrupt()
authorH Hartley Sweeten <hsweeten@visionengravers.com>
Wed, 12 Aug 2015 20:25:47 +0000 (13:25 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 15 Aug 2015 01:36:18 +0000 (18:36 -0700)
Use register bit defines from addi_tcw.h to remove the "magic" numbers.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Reviewed-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/comedi/drivers/addi_apci_3501.c

index 4faa23b..40ff914 100644 (file)
@@ -262,11 +262,12 @@ static irqreturn_t apci3501_interrupt(int irq, void *d)
 
        /*  Disable Interrupt */
        ctrl = inl(devpriv->tcw + ADDI_TCW_CTRL_REG);
-       ctrl &= 0xfffff9fd;
+       ctrl &= ~(ADDI_TCW_CTRL_GATE | ADDI_TCW_CTRL_TRIG |
+                 ADDI_TCW_CTRL_IRQ_ENA);
        outl(ctrl, devpriv->tcw + ADDI_TCW_CTRL_REG);
 
-       status = inl(devpriv->tcw + ADDI_TCW_IRQ_REG) & 0x1;
-       if (!status) {
+       status = inl(devpriv->tcw + ADDI_TCW_IRQ_REG);
+       if (!(status & ADDI_TCW_IRQ)) {
                dev_err(dev->class_dev, "IRQ from unknown source\n");
                return IRQ_NONE;
        }
@@ -274,8 +275,9 @@ static irqreturn_t apci3501_interrupt(int irq, void *d)
        /* Enable Interrupt Send a signal to from kernel to user space */
        send_sig(SIGIO, devpriv->tsk_Current, 0);
        ctrl = inl(devpriv->tcw + ADDI_TCW_CTRL_REG);
-       ctrl &= 0xfffff9fd;
-       ctrl |= 1 << 1;
+       ctrl &= ~(ADDI_TCW_CTRL_GATE | ADDI_TCW_CTRL_TRIG |
+                 ADDI_TCW_CTRL_IRQ_ENA);
+       ctrl |= ADDI_TCW_CTRL_IRQ_ENA;
        outl(ctrl, devpriv->tcw + ADDI_TCW_CTRL_REG);
        inl(devpriv->tcw + ADDI_TCW_STATUS_REG);