Re: [PATCH v2] iio: afe: rescale: Accept only offset channels

From: Jonathan Cameron
Date: Tue Oct 17 2023 - 15:27:16 EST


On Tue, 17 Oct 2023 16:00:22 +0200
Peter Rosin <peda@xxxxxxxxxx> wrote:

> Hi!
>
> 2023-10-17 at 11:05, Jonathan Cameron wrote:
> > On Mon, 16 Oct 2023 12:05:32 +0200
> > Peter Rosin <peda@xxxxxxxxxx> wrote:
> >> 2023-10-16 at 10:39, Linus Walleij wrote:
>
>
>
> >>> Just raw (with neither offset or rescale) doesn't make sense, since
> >>
> >> And I don't see why not. That's the crux.
> >>
> >>> the AFE rescaler does just offsetting and rescaling, in that case the
> >>> user should just use the raw channel. Also it would then take
> >>> precedence over a processed channel (which applies rescale and
> >>> offset internally) which doesn't make sense to me.
> >>
> >> Why isn't it perfectly fine for a device to provide only a raw
> >> channel and then expect that to be interpreted as the real unit?
> >> Why would it need a processed channel when no processing is
> >> going on? E.g. a device reporting the temp in the expected unit
> >> in one of its registers. Or whatever with such a friendly
> >> register.
> >
> > In that case it should report a processed value to indicate that.
> > It's admittedly a bit of a corner case given it's not processed by
> > the kernel - there is an argument that this (more or less) only
> > happens when someone has processed a raw ADC count but in theory
> > that's not necessarily true.
> >
> > There are a few examples of drivers passing through the register value
> > as processed in tree - normally when there
> > is a microprocessor doing some fusion of signals or similar.
> >
> > Raw gets reported on it's own in a few other cases, such as when
> > there are no known units - that happens for things like light intensity,
> > proximity (which is often reflected light intensity).
> > For those I'm not sure the rescaler is useful.
>
> Excellent, thanks for the clarification!
>
> Reviewed-by: Peter Rosin <peda@xxxxxxxxxx>
Thanks,

Applied to the fixes-togreg branch of iio.git. I'll just let this
sit in linux-next for a day or so before a pull request (I have
a few other fixes queued). That will almost certainly get queued for
the merge window given timing.

Thanks,

Jonathan


>
> Cheers,
> Peter