Use the subdevice s->state to hold the current state of the data register
outputs instead of carrying it in the private data.

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/comedi_parport.c | 12 ++++--------
 1 file changed, 4 insertions(+), 8 deletions(-)

diff --git a/drivers/staging/comedi/drivers/comedi_parport.c 
b/drivers/staging/comedi/drivers/comedi_parport.c
index 72b0771..5565a99 100644
--- a/drivers/staging/comedi/drivers/comedi_parport.c
+++ b/drivers/staging/comedi/drivers/comedi_parport.c
@@ -92,7 +92,6 @@ pin, which can be used to wake up tasks.
 #define PARPORT_CTRL_BIDIR_ENA (1 << 5)
 
 struct parport_private {
-       unsigned int a_data;
        unsigned int c_data;
        int enable_irq;
 };
@@ -100,13 +99,11 @@ struct parport_private {
 static int parport_insn_a(struct comedi_device *dev, struct comedi_subdevice 
*s,
                          struct comedi_insn *insn, unsigned int *data)
 {
-       struct parport_private *devpriv = dev->private;
-
        if (data[0]) {
-               devpriv->a_data &= ~data[0];
-               devpriv->a_data |= (data[0] & data[1]);
+               s->state &= ~data[0];
+               s->state |= (data[0] & data[1]);
 
-               outb(devpriv->a_data, dev->iobase + PARPORT_DATA_REG);
+               outb(s->state, dev->iobase + PARPORT_DATA_REG);
        }
 
        data[1] = inb(dev->iobase + PARPORT_DATA_REG);
@@ -327,8 +324,7 @@ static int parport_attach(struct comedi_device *dev,
                s->type = COMEDI_SUBD_UNUSED;
        }
 
-       devpriv->a_data = 0;
-       outb(devpriv->a_data, dev->iobase + PARPORT_DATA_REG);
+       outb(0, dev->iobase + PARPORT_DATA_REG);
        devpriv->c_data = 0;
        outb(devpriv->c_data, dev->iobase + PARPORT_CTRL_REG);
 
-- 
1.8.3.2

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

Reply via email to