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 8aab494..99c8ba7 100644
--- a/drivers/staging/comedi/drivers/adv_pci_dio.c
+++ b/drivers/staging/comedi/drivers/adv_pci_dio.c
@@ -393,7 +393,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 */
@@ -1155,8 +1154,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;
@@ -1164,12 +1161,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_detach(dev);
 }
 
-- 
2.0.3

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

Reply via email to