From: quentin.schulz@free-electrons.com (Quentin Schulz)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v2 2/4] iio: adc: add support for Allwinner SoCs ADC
Date: Wed, 20 Jul 2016 14:37:40 +0200 [thread overview]
Message-ID: <f6e32bf0-f043-0d34-5190-18b89920bbfd@free-electrons.com> (raw)
In-Reply-To: <e24c8b63-7774-66d2-3317-43fd5598ecc9@kernel.org>
On 18/07/2016 15:18, Jonathan Cameron wrote:
[...]
>> +
>> + if (!wait_for_completion_timeout(&info->completion,
>> + msecs_to_jiffies(100))) {
>> + ret = -ETIMEDOUT;
>> + goto out;
>> + }
>> +
>> + if (info->flags & SUNXI_GPADC_ARCH_SUN4I)
>> + *val = info->temp_data * 133 - 257000;
> Why report as processed? I'd just report them as raw with the scale
> and offset provided. It's not a big thing, but if we can leave it so
> that the conversion only occurs when desired, why not?
>
> For in kernel users, this all happen 'automagically' anyway ;)
>
Mmmmh, in the code above we apply the scale on the raw value and then
the offset. While in iio_convert_raw_to_processed
(http://lxr.free-electrons.com/source/drivers/iio/inkern.c#L507), the
offset is applied before the scale.
The way would be to factorize the computation by scale:
Now: *val = raw * scale + offset
Then: *val = (raw + offset/scale) * scale
But the offset is an integer and offset/scale is therefore rounded.
Currently, we have the following values:
sun4i: -257000/133 = -1932.3308270676691
sun5i: -144700/100 = -1447
sun6i: -271000/167 = -1622.754491017964
Do we accept such rounding?
If not, we either stay with the processed value in read_raw or patch
inkern to add an offset to apply after having applied the scale to the
raw value (val2 from iio_channel_read is yet unused with
IIO_CHAN_INFO_OFFSET for example, we could use that to specify an
offset2 to apply after the switch(scale_type)-case).
[...]
Quentin
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: OpenPGP digital signature
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20160720/b66e41b3/attachment.sig>
next prev parent reply other threads:[~2016-07-20 12:37 UTC|newest]
Thread overview: 36+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-07-15 9:59 [PATCH v2 0/4] add support for Allwinner SoCs ADC Quentin Schulz
2016-07-15 9:59 ` [PATCH v2 1/4] hwmon: iio_hwmon: defer probe when no channel is found Quentin Schulz
2016-07-16 17:00 ` [v2,1/4] " Guenter Roeck
2016-07-18 10:02 ` Maxime Ripard
2016-07-18 13:29 ` Guenter Roeck
2016-07-15 9:59 ` [PATCH v2 2/4] iio: adc: add support for Allwinner SoCs ADC Quentin Schulz
2016-07-18 12:57 ` Maxime Ripard
2016-07-19 9:04 ` Quentin Schulz
2016-07-19 12:40 ` Maxime Ripard
2016-07-18 13:18 ` Jonathan Cameron
2016-07-19 8:33 ` Quentin Schulz
2016-07-20 14:57 ` Jonathan Cameron
2016-07-21 12:15 ` Quentin Schulz
2016-07-23 6:37 ` Jonathan Cameron
2016-07-20 12:37 ` Quentin Schulz [this message]
2016-07-20 14:15 ` Crt Mori
2016-07-20 14:59 ` Jonathan Cameron
2016-07-15 9:59 ` [PATCH v2 3/4] mfd: " Quentin Schulz
2016-07-18 13:02 ` Maxime Ripard
2016-07-19 12:04 ` Quentin Schulz
2016-07-18 13:25 ` Jonathan Cameron
2016-07-19 7:31 ` Lee Jones
2016-07-20 15:01 ` Jonathan Cameron
2016-07-21 12:12 ` Lee Jones
2016-07-21 20:08 ` Maxime Ripard
2016-07-22 13:55 ` Lee Jones
2016-07-23 6:42 ` Jonathan Cameron
2016-07-25 9:55 ` Maxime Ripard
2016-07-19 8:35 ` Quentin Schulz
2016-07-15 9:59 ` [PATCH v2 4/4] hwmon: iio: add label for channels read by iio_hwmon Quentin Schulz
2016-07-15 14:03 ` Guenter Roeck
2016-07-15 14:36 ` Quentin Schulz
2016-07-16 2:53 ` Guenter Roeck
2016-07-18 12:24 ` Jonathan Cameron
2016-07-19 6:55 ` Quentin Schulz
2016-07-20 14:49 ` Jonathan Cameron
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=f6e32bf0-f043-0d34-5190-18b89920bbfd@free-electrons.com \
--to=quentin.schulz@free-electrons.com \
--cc=linux-arm-kernel@lists.infradead.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).