This function returns the total number of bytes for a full scan of
an async command chanlist. The returned value is an unsigned int.
Change all the local variables to unsigned int and use a local
variable for the s->async->cmd.chanlist_len.
Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Reviewed-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
static inline unsigned int cfc_bytes_per_scan(struct comedi_subdevice *s)
{
- int num_samples;
- int bits_per_sample;
+ unsigned int chanlist_len = s->async->cmd.chanlist_len;
+ unsigned int num_samples;
+ unsigned int bits_per_sample;
switch (s->type) {
case COMEDI_SUBD_DI:
case COMEDI_SUBD_DO:
case COMEDI_SUBD_DIO:
bits_per_sample = 8 * bytes_per_sample(s);
- num_samples = (s->async->cmd.chanlist_len +
- bits_per_sample - 1) / bits_per_sample;
+ num_samples = (chanlist_len + bits_per_sample - 1) /
+ bits_per_sample;
break;
default:
- num_samples = s->async->cmd.chanlist_len;
+ num_samples = chanlist_len;
break;
}
return num_samples * bytes_per_sample(s);