Commit f23b65a5 authored by Ian Abbott's avatar Ian Abbott Committed by Greg Kroah-Hartman

staging: comedi: pcmmio: sample types are unsigned

Sample values in comedi are generally represented as unsigned values.
Change `interrupt_pcmmio()` and `ai_rinsn()` in the "pcmmio" module to
use unsigned sample values for consistency.

Also, make the order in which `interrupt_pcmmio()` writes the two sample
values (each actually containing up to 16 1-bit sample values)
independent of the host byte ordering.

Note that this module is a mess, so please excuse the checkpatch
warnings.
Signed-off-by: default avatarIan Abbott <abbotti@mev.co.uk>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 4bf59ce2
...@@ -553,12 +553,11 @@ static irqreturn_t interrupt_pcmmio(int irq, void *d) ...@@ -553,12 +553,11 @@ static irqreturn_t interrupt_pcmmio(int irq, void *d)
val |= (1U << n); val |= (1U << n);
} }
/* Write the scan to the buffer. */ /* Write the scan to the buffer. */
if (comedi_buf_put(s->async, ((short *)&val)[0]) if (comedi_buf_put(s->async, val)
&& &&
comedi_buf_put comedi_buf_put
(s->async, (s->async,
((short *) val >> 16)) {
&val)[1])) {
s->async->events |= (COMEDI_CB_BLOCK | COMEDI_CB_EOS); s->async->events |= (COMEDI_CB_BLOCK | COMEDI_CB_EOS);
} else { } else {
/* Overflow! Stop acquisition!! */ /* Overflow! Stop acquisition!! */
...@@ -846,7 +845,7 @@ static int ai_rinsn(struct comedi_device *dev, struct comedi_subdevice *s, ...@@ -846,7 +845,7 @@ static int ai_rinsn(struct comedi_device *dev, struct comedi_subdevice *s,
CR_RANGE(insn->chanspec), aref = CR_AREF(insn->chanspec); CR_RANGE(insn->chanspec), aref = CR_AREF(insn->chanspec);
unsigned char command_byte = 0; unsigned char command_byte = 0;
unsigned iooffset = 0; unsigned iooffset = 0;
short sample, adc_adjust = 0; unsigned short sample, adc_adjust = 0;
if (chan > 7) if (chan > 7)
chan -= 8, iooffset = 4; /* chan -= 8, iooffset = 4; /*
......
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