staging: comedi: amplc_dio200: use comedi_legacy_detach()
authorH Hartley Sweeten <hsweeten@visionengravers.com>
Thu, 18 Apr 2013 21:33:40 +0000 (14:33 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 19 Apr 2013 18:19:54 +0000 (11:19 -0700)
The I/O region used by this driver is always requested using
comedi_request_region(). The devpriv->io union is only used by
the common code shared by the legacy and PCI drivers.

Use the new comedi_legacy_detach() helper in the (*detach) to
release the I/O region requested by this driver. That function
will handle the proper sanity checking before releasing the
resource.

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/amplc_dio200.c

index dc35cc9fb0816da307a4f7d2eae914d18bdf96b4..297750bef0f73c0c44b07e7e83489a52d17c48a8 100644 (file)
@@ -292,14 +292,8 @@ static int dio200_attach(struct comedi_device *dev, struct comedi_devconfig *it)
 
 static void dio200_detach(struct comedi_device *dev)
 {
-       const struct dio200_board *thisboard = comedi_board(dev);
-       struct dio200_private *devpriv = dev->private;
-
-       if (!thisboard || !devpriv)
-               return;
        amplc_dio200_common_detach(dev);
-       if (devpriv->io.regtype == io_regtype)
-               release_region(devpriv->io.u.iobase, thisboard->mainsize);
+       comedi_legacy_detach(dev);
 }
 
 static struct comedi_driver amplc_dio200_driver = {