Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 00d7a906 authored by H Hartley Sweeten's avatar H Hartley Sweeten Committed by Greg Kroah-Hartman
Browse files

staging: comedi: contec_pci_dio: cleanup contec_do_insn_bits



Create local variables for the mask and bits values passed in
the data pointer to make this function a bit clearer.

Return the state of the output bits (s->state) in data[1] since
this is what comedilib is expecting.

Signed-off-by: default avatarH Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 8d02b3aa
Loading
Loading
Loading
Loading
+9 −3
Original line number Diff line number Diff line
@@ -44,12 +44,18 @@ static int contec_do_insn_bits(struct comedi_device *dev,
			       struct comedi_subdevice *s,
			       struct comedi_insn *insn, unsigned int *data)
{
	if (data[0]) {
		s->state &= ~data[0];
		s->state |= data[0] & data[1];
	unsigned int mask = data[0];
	unsigned int bits = data[1];

	if (mask) {
		s->state &= ~mask;
		s->state |= (bits & mask);

		outw(s->state, dev->iobase + PIO1616L_DO_REG);
	}

	data[1] = s->state;

	return insn->n;
}