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 <hswee...@visionengravers.com>
Cc: Ian Abbott <abbo...@mev.co.uk>
Cc: Greg Kroah-Hartman <gre...@linuxfoundation.org>
---
 drivers/staging/comedi/drivers/comedi_fc.h | 11 ++++++-----
 1 file changed, 6 insertions(+), 5 deletions(-)

diff --git a/drivers/staging/comedi/drivers/comedi_fc.h 
b/drivers/staging/comedi/drivers/comedi_fc.h
index 042bf87..b8d125e 100644
--- a/drivers/staging/comedi/drivers/comedi_fc.h
+++ b/drivers/staging/comedi/drivers/comedi_fc.h
@@ -47,19 +47,20 @@ unsigned int cfc_handle_events(struct comedi_device *,
 
 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);
-- 
1.8.5.2

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

Reply via email to