On 2012-06-26 01:17, H Hartley Sweeten wrote:
@@ -129,7 +124,22 @@ static int das16cs_ai_rinsn(struct comedi_device *dev,
outw(devpriv->status1, dev->iobase + 4);
devpriv->status2 &= ~0xff00;
- devpriv->status2 |= range_bits[range];
+ switch (range) {
+ case 0:
+ devpriv->status2 |= 0x800;
+ break;
+ case 1:
+ devpriv->status2 |= 0x000;
+ break;
+ case 2:
+ devpriv->status2 |= 0x100;
+ break;
+ case 3:
+ devpriv->status2 |= 0x200;
+ break;
+ default:
+ return -EINVAL;
+ }
Is that really an improvement? The 'range' variable value will be in
range anyway (the comedi core checks beforehand in
comedi_check_chanlist()), and looking up the constant to OR with
devpriv->status2 is probably less object code (and certainly less source
code).