staging: comedi: addi_apci_1516: don't reset the apci1016 board
authorH Hartley Sweeten <hartleys@visionengravers.com>
Tue, 13 Nov 2012 20:40:50 +0000 (13:40 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 13 Nov 2012 23:12:47 +0000 (15:12 -0800)
The apci1016 board only has digital inputs. There is no reason to
reset the digital outputs and watchdog timer on that board.

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

index c3e167d..c1caeb1 100644 (file)
@@ -63,8 +63,12 @@ static irqreturn_t v_ADDI_Interrupt(int irq, void *d)
 
 static int apci1516_reset(struct comedi_device *dev)
 {
+       const struct addi_board *this_board = comedi_board(dev);
        struct addi_private *devpriv = dev->private;
 
+       if (!this_board->i_Timer)
+               return 0;
+
        outw(0x0, devpriv->iobase + APCI1516_DO_REG);
        outw(0x0, devpriv->i_IobaseAddon + APCI1516_WDOG_CTRL_REG);
        outw(0x0, devpriv->i_IobaseAddon + APCI1516_WDOG_RELOAD_LSB_REG);