The board reset function disables and clears all interrupts. It also
resets all the digital output channels to 0.

Interrupts are not currently used by this driver. For asthetics, do
the board reset early in the (*auto_attach) to make sure the interrupts
are disabled in case this feature is added.

Signed-off-by: H Hartley Sweeten <hswee...@visionengravers.com>
Cc: Ian Abbott <abbo...@mev.co.uk>
Cc: Greg Kroah-Hartman <gre...@linuxfoundation.org>
---
 drivers/staging/comedi/drivers/adv_pci_dio.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/staging/comedi/drivers/adv_pci_dio.c 
b/drivers/staging/comedi/drivers/adv_pci_dio.c
index 83591a6..55ca8f9 100644
--- a/drivers/staging/comedi/drivers/adv_pci_dio.c
+++ b/drivers/staging/comedi/drivers/adv_pci_dio.c
@@ -471,6 +471,8 @@ static int pci_dio_auto_attach(struct comedi_device *dev,
        else
                dev->iobase = pci_resource_start(pcidev, 2);
 
+       pci_dio_reset(dev);
+
        ret = comedi_alloc_subdevices(dev, board->nsubdevs);
        if (ret)
                return ret;
@@ -543,8 +545,6 @@ static int pci_dio_auto_attach(struct comedi_device *dev,
                comedi_8254_subdevice_init(s, dev->pacer);
        }
 
-       pci_dio_reset(dev);
-
        return 0;
 }
 
-- 
2.5.1

_______________________________________________
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel

Reply via email to