On 09/28/13 10:31, Lars-Peter Clausen wrote: > Move the complexity of calculating the fixed point scale to the core. > > Signed-off-by: Lars-Peter Clausen <lars@xxxxxxxxxx> Applied to the togreg branch of iio.git Thanks > --- > drivers/iio/dac/ad5360.c | 11 +++++------ > 1 file changed, 5 insertions(+), 6 deletions(-) > > diff --git a/drivers/iio/dac/ad5360.c b/drivers/iio/dac/ad5360.c > index d2da71e..b968af5 100644 > --- a/drivers/iio/dac/ad5360.c > +++ b/drivers/iio/dac/ad5360.c > @@ -379,15 +379,14 @@ static int ad5360_read_raw(struct iio_dev *indio_dev, > *val = ret >> chan->scan_type.shift; > return IIO_VAL_INT; > case IIO_CHAN_INFO_SCALE: > - /* vout = 4 * vref * dac_code */ > - scale_uv = ad5360_get_channel_vref(st, chan->channel) * 4 * 100; > + scale_uv = ad5360_get_channel_vref(st, chan->channel); > if (scale_uv < 0) > return scale_uv; > > - scale_uv >>= (chan->scan_type.realbits); > - *val = scale_uv / 100000; > - *val2 = (scale_uv % 100000) * 10; > - return IIO_VAL_INT_PLUS_MICRO; > + /* vout = 4 * vref * dac_code */ > + *val = scale_uv * 4 / 1000; > + *val2 = chan->scan_type.realbits; > + return IIO_VAL_FRACTIONAL_LOG2; > case IIO_CHAN_INFO_CALIBBIAS: > ret = ad5360_read(indio_dev, AD5360_READBACK_OFFSET, > chan->address); > -- To unsubscribe from this list: send the line "unsubscribe linux-iio" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html