[PATCH 06/16] staging: comedi: icp_multi: remove 'valid' member from private data

H Hartley Sweeten hsweeten at visionengravers.com
Mon Aug 4 22:55:33 UTC 2014


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

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

Signed-off-by: H Hartley Sweeten <hsweeten at visionengravers.com>
Cc: Ian Abbott <abbotti at mev.co.uk>
Cc: Greg Kroah-Hartman <gregkh at linuxfoundation.org>
---
 drivers/staging/comedi/drivers/icp_multi.c | 10 ++--------
 1 file changed, 2 insertions(+), 8 deletions(-)

diff --git a/drivers/staging/comedi/drivers/icp_multi.c b/drivers/staging/comedi/drivers/icp_multi.c
index a98cef2..9b7cbad 100644
--- a/drivers/staging/comedi/drivers/icp_multi.c
+++ b/drivers/staging/comedi/drivers/icp_multi.c
@@ -107,7 +107,6 @@ static const char range_codes_analog[] = { 0x00, 0x20, 0x10, 0x30 };
 */
 
 struct icp_multi_private {
-	char valid;		/*  card is usable */
 	unsigned int AdcCmdStatus;	/*  ADC Command/Status register */
 	unsigned int DacCmdStatus;	/*  DAC Command/Status register */
 	unsigned int IntEnable;	/*  Interrupt Enable register */
@@ -549,18 +548,13 @@ static int icp_multi_auto_attach(struct comedi_device *dev,
 	s->insn_read = icp_multi_insn_read_ctr;
 	s->insn_write = icp_multi_insn_write_ctr;
 
-	devpriv->valid = 1;
-
 	return 0;
 }
 
 static void icp_multi_detach(struct comedi_device *dev)
 {
-	struct icp_multi_private *devpriv = dev->private;
-
-	if (devpriv)
-		if (devpriv->valid)
-			icp_multi_reset(dev);
+	if (dev->mmio)
+		icp_multi_reset(dev);
 	if (dev->irq)
 		free_irq(dev->irq, dev);
 	if (dev->mmio)
-- 
2.0.3



More information about the devel mailing list