This member is set at the end of the driver attach and is only used to
verify that pci_dio_reset() can be called in the (*detach). The only
requirement for pci_dio_reset() to work is that the dev->iobase is valid.

Remove the 'valid' member from the private data and use 'dev->iobase' to
see if the reset can be done.

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 | 11 ++---------
 1 file changed, 2 insertions(+), 9 deletions(-)

diff --git a/drivers/staging/comedi/drivers/adv_pci_dio.c 
b/drivers/staging/comedi/drivers/adv_pci_dio.c
index b8c7d914..d3b8ffe 100644
--- a/drivers/staging/comedi/drivers/adv_pci_dio.c
+++ b/drivers/staging/comedi/drivers/adv_pci_dio.c
@@ -394,7 +394,6 @@ static const struct dio_boardtype boardtypes[] = {
 };
 
 struct pci_dio_private {
-       char valid;             /*  card is usable */
        char GlobalIrqEnabled;  /*  1= any IRQ source is enabled */
        /*  PCI-1760 specific data */
        unsigned char IDICntEnable;     /* counter's counting enable status */
@@ -1157,8 +1156,6 @@ static int pci_dio_auto_attach(struct comedi_device *dev,
        if (this_board->cardtype == TYPE_PCI1760)
                pci1760_attach(dev);
 
-       devpriv->valid = 1;
-
        pci_dio_reset(dev);
 
        return 0;
@@ -1166,12 +1163,8 @@ static int pci_dio_auto_attach(struct comedi_device *dev,
 
 static void pci_dio_detach(struct comedi_device *dev)
 {
-       struct pci_dio_private *devpriv = dev->private;
-
-       if (devpriv) {
-               if (devpriv->valid)
-                       pci_dio_reset(dev);
-       }
+       if (dev->iobase)
+               pci_dio_reset(dev);
        comedi_pci_disable(dev);
 }
 
-- 
2.0.3

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

Reply via email to