Commit 9b13bc1d authored by H Hartley Sweeten's avatar H Hartley Sweeten Committed by Greg Kroah-Hartman

staging: comedi: ii_pci20kc: use comedi_dio_update_state()

The extra mask used to only update the channels configured as outputs is
not necessary in this driver. Remove it and use comedi_dio_update_state()
to handle the boilerplate code to update the subdevice s->state.
Signed-off-by: default avatarH Hartley Sweeten <hsweeten@visionengravers.com>
Reviewed-by: default avatarIan Abbott <abbotti@mev.co.uk>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent ca5d4a20
...@@ -378,13 +378,10 @@ static int ii20k_dio_insn_bits(struct comedi_device *dev, ...@@ -378,13 +378,10 @@ static int ii20k_dio_insn_bits(struct comedi_device *dev,
unsigned int *data) unsigned int *data)
{ {
struct ii20k_private *devpriv = dev->private; struct ii20k_private *devpriv = dev->private;
unsigned int mask = data[0] & s->io_bits; /* outputs only */ unsigned int mask;
unsigned int bits = data[1];
mask = comedi_dio_update_state(s, data);
if (mask) { if (mask) {
s->state &= ~mask;
s->state |= (bits & mask);
if (mask & 0x000000ff) if (mask & 0x000000ff)
writeb((s->state >> 0) & 0xff, writeb((s->state >> 0) & 0xff,
devpriv->ioaddr + II20K_DIO0_REG); devpriv->ioaddr + II20K_DIO0_REG);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment