From: Salah Triki <salah.triki@gmail.com>
To: Andy Shevchenko <andriy.shevchenko@intel.com>
Cc: "Marcelo Schmitt" <marcelo.schmitt@analog.com>,
"Jonathan Cameron" <jic23@kernel.org>,
"David Lechner" <dlechner@baylibre.com>,
"Nuno Sá" <nuno.sa@analog.com>,
"Andy Shevchenko" <andy@kernel.org>,
linux-iio@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH] iio: temperature: max30208: fix wrong scale value
Date: Tue, 28 Apr 2026 14:36:00 +0100 [thread overview]
Message-ID: <afC3wHzcwWMMgt3i@pc> (raw)
In-Reply-To: <afCTYDYCRXoxi37r@ashevche-desk.local>
On Tue, Apr 28, 2026 at 02:00:48PM +0300, Andy Shevchenko wrote:
> On Tue, Apr 28, 2026 at 09:54:15AM +0100, Salah Triki wrote:
> > The driver currently returns a scale of 5 for IIO_CHAN_INFO_SCALE, which
> > leads to incorrect temperature readings.
> >
> > According to the MAX30208 datasheet, the temperature resolution is 0.005°C
> > per LSB. Using IIO_VAL_FRACTIONAL with 5/1000 correctly represents this
> > 16-bit resolution.
> >
> > Fix the scale value to ensure user space tools report the temperature
> > correctly in Celsius.
>
> > Fixes: 9ee95ae4cffd ("iio: temperature: Add driver support for Maxim
> > MAX30208")
>
> The tags should go with 1 tag per one (single) line. Do not wrap them.
Sorry about that, I will fix the tag wrapping in v2.
>
> > Signed-off-by: Salah Triki <salah.triki@gmail.com>
>
> ...
>
> > case IIO_CHAN_INFO_SCALE:
> > *val = 5;
> > - return IIO_VAL_INT;
> > + *val2 = 1000;
> > + return IIO_VAL_FRACTIONAL;
>
> Isn't it an ABI change?
>
Yes, it technically changes the value exposed to user space. However, the
current scale (5) is objectively incorrect according to the datasheet
(0.005°C per LSB).
With the current scale, a raw reading of 5000 (25°C) is reported as
25000°C by user space tools. This makes the driver practically unusable
for standard IIO consumers without custom workarounds. Since the driver is
relatively recent, I believe fixing it now to match the hardware
specification is preferable to keeping a broken ABI.
What do you think?
Best regards,
--
Salah Triki
next prev parent reply other threads:[~2026-04-28 13:36 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-04-28 8:54 [PATCH] iio: temperature: max30208: fix wrong scale value Salah Triki
2026-04-28 11:00 ` Andy Shevchenko
2026-04-28 13:36 ` Salah Triki [this message]
2026-04-28 15:34 ` Jonathan Cameron
2026-04-28 15:43 ` Andy Shevchenko
2026-04-28 15:56 ` 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=afC3wHzcwWMMgt3i@pc \
--to=salah.triki@gmail.com \
--cc=andriy.shevchenko@intel.com \
--cc=andy@kernel.org \
--cc=dlechner@baylibre.com \
--cc=jic23@kernel.org \
--cc=linux-iio@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=marcelo.schmitt@analog.com \
--cc=nuno.sa@analog.com \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.