lkml.org 
[lkml]   [2012]   [Aug]   [15]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    SubjectRE: [PATCH v2] iio: adc: add new lp8788 adc driver
    Date
    > > +	switch (mask) {
    > > + case IIO_CHAN_INFO_RAW:
    > > + *val = result;
    > > + return IIO_VAL_INT;
    > > + case IIO_CHAN_INFO_SCALE:
    > > + *val = adc_const[id] * ((result * 1000 + 500) / 1000);
    >
    > This looks wrong. The IIO_CHAN_INFO_SCALE attribute is the factor by
    > which
    > IIO_CHAN_INFO_RAW needs to be multiplied to get the value in the proper
    > unit,
    > which is specified in the IIO ABI spec. E.g. milli volts for voltages.
    >
    > What you return here seems to be the IIO_CHAN_INFO_PROCESSED attribute.
    > Which
    > basically is raw * scale.

    Thanks a lot for your review.

    Any way to get the result with offset value in the iio-consumer side?
    What I need is as below.

    result = raw * scale + offset

    At this moment, there are two apis() for reading the iio channel
    - iio_read_channel_raw() and iio_read_channel_scale().

    Does it sound good if I add iio_read_channel_offset() consumer api
    using IIO_CHAN_INFO_OFFSET?

    Best Regards,
    Milo



    \
     
     \ /
      Last update: 2012-08-16 03:23    [W:2.251 / U:0.676 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site