staging: comedi: usbdux: sample types are unsigned
authorIan Abbott <abbotti@mev.co.uk>
Wed, 16 Oct 2013 13:40:37 +0000 (14:40 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 16 Oct 2013 19:48:32 +0000 (12:48 -0700)
Sample values in comedi are generally represented as unsigned values.
Use unsigned types consistently for handling comedi sample data and also
for the USB data buffers.

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/comedi/drivers/usbdux.c

index 9218d7336923b199fca893e129b85f84b83e2877..da1d501d9e4e64304e82f04a5f1e6e618f8d1647 100644 (file)
@@ -122,7 +122,7 @@ sampling rate. If you sample two channels you get 4kHz and so on.
 #define PWM_DEFAULT_PERIOD ((long)(1E9/100))
 
 /* Size of one A/D value */
-#define SIZEADIN          ((sizeof(int16_t)))
+#define SIZEADIN          ((sizeof(uint16_t)))
 
 /*
  * Size of the input-buffer IN BYTES
@@ -134,7 +134,7 @@ sampling rate. If you sample two channels you get 4kHz and so on.
 #define SIZEINSNBUF       16
 
 /* size of one value for the D/A converter: channel and value */
-#define SIZEDAOUT          ((sizeof(int8_t)+sizeof(int16_t)))
+#define SIZEDAOUT          ((sizeof(uint8_t)+sizeof(uint16_t)))
 
 /*
  * Size of the output-buffer in bytes
@@ -195,15 +195,15 @@ struct usbdux_private {
        /* PWM period */
        unsigned int pwm_period;
        /* PWM internal delay for the GPIF in the FX2 */
-       int8_t pwm_delay;
+       uint8_t pwm_delay;
        /* size of the PWM buffer which holds the bit pattern */
        int pwm_buf_sz;
        /* input buffer for the ISO-transfer */
-       int16_t *in_buf;
+       uint16_t *in_buf;
        /* input buffer for single insn */
-       int16_t *insn_buf;
+       uint16_t *insn_buf;
 
-       int8_t ao_chanlist[USBDUX_NUM_AO_CHAN];
+       uint8_t ao_chanlist[USBDUX_NUM_AO_CHAN];
        unsigned int ao_readback[USBDUX_NUM_AO_CHAN];
 
        unsigned int high_speed:1;
@@ -225,7 +225,7 @@ struct usbdux_private {
        /* interval in frames/uframes */
        unsigned int ai_interval;
        /* commands */
-       int8_t *dux_commands;
+       uint8_t *dux_commands;
        struct semaphore sem;
 };
 
@@ -367,7 +367,7 @@ static void usbduxsub_ai_isoc_irq(struct urb *urb)
        n = s->async->cmd.chanlist_len;
        for (i = 0; i < n; i++) {
                unsigned int range = CR_RANGE(s->async->cmd.chanlist[i]);
-               int16_t val = le16_to_cpu(devpriv->in_buf[i]);
+               uint16_t val = le16_to_cpu(devpriv->in_buf[i]);
 
                /* bipolar data is two's-complement */
                if (comedi_range_is_bipolar(s, range))
@@ -415,7 +415,7 @@ static void usbduxsub_ao_isoc_irq(struct urb *urb)
        struct comedi_device *dev = urb->context;
        struct comedi_subdevice *s = dev->write_subdev;
        struct usbdux_private *devpriv = dev->private;
-       int8_t *datap;
+       uint8_t *datap;
        int len;
        int ret;
        int i;
@@ -483,7 +483,7 @@ static void usbduxsub_ao_isoc_irq(struct urb *urb)
                *datap++ = len;
                for (i = 0; i < s->async->cmd.chanlist_len; i++) {
                        unsigned int chan = devpriv->ao_chanlist[i];
-                       short val;
+                       unsigned short val;
 
                        ret = comedi_buf_get(s->async, &val);
                        if (ret < 0) {
@@ -649,14 +649,15 @@ static int usbdux_ai_cmdtest(struct comedi_device *dev,
  * creates the ADC command for the MAX1271
  * range is the range value from comedi
  */
-static int8_t create_adc_command(unsigned int chan, int range)
+static uint8_t create_adc_command(unsigned int chan, unsigned int range)
 {
-       int8_t p = (range <= 1);
-       int8_t r = ((range % 2) == 0);
+       uint8_t p = (range <= 1);
+       uint8_t r = ((range % 2) == 0);
+
        return (chan << 4) | ((p == 1) << 2) | ((r == 1) << 3);
 }
 
-static int send_dux_commands(struct comedi_device *dev, int cmd_type)
+static int send_dux_commands(struct comedi_device *dev, unsigned int cmd_type)
 {
        struct usb_device *usb = comedi_to_usb_dev(dev);
        struct usbdux_private *devpriv = dev->private;
@@ -669,7 +670,7 @@ static int send_dux_commands(struct comedi_device *dev, int cmd_type)
                            &nsent, BULK_TIMEOUT);
 }
 
-static int receive_dux_commands(struct comedi_device *dev, int command)
+static int receive_dux_commands(struct comedi_device *dev, unsigned int command)
 {
        struct usb_device *usb = comedi_to_usb_dev(dev);
        struct usbdux_private *devpriv = dev->private;
@@ -879,7 +880,7 @@ static int usbdux_ao_insn_write(struct comedi_device *dev,
        struct usbdux_private *devpriv = dev->private;
        unsigned int chan = CR_CHAN(insn->chanspec);
        unsigned int val = devpriv->ao_readback[chan];
-       int16_t *p = (int16_t *)&devpriv->dux_commands[2];
+       uint16_t *p = (uint16_t *)&devpriv->dux_commands[2];
        int ret = -EBUSY;
        int i;
 
@@ -1198,7 +1199,7 @@ static int usbdux_counter_write(struct comedi_device *dev,
 {
        struct usbdux_private *devpriv = dev->private;
        unsigned int chan = CR_CHAN(insn->chanspec);
-       int16_t *p = (int16_t *)&devpriv->dux_commands[2];
+       uint16_t *p = (uint16_t *)&devpriv->dux_commands[2];
        int ret = 0;
        int i;