mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Francesco Lavra <flavra@baylibre.com>
To: Andy Shevchenko <andriy.shevchenko@intel.com>
Cc: "Lorenzo Bianconi" <lorenzo@kernel.org>,
	"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: imu: st_lsm6dsx: Fix check for invalid samples from FIFO
Date: Wed, 21 Jan 2026 15:05:54 +0100	[thread overview]
Message-ID: <0168c543e320aeacbbdcdd7f4f3bb0edb81b79f4.camel@baylibre.com> (raw)
In-Reply-To: <aXDK6KRIIPjJxfFK@smile.fi.intel.com>

On Wed, 2026-01-21 at 14:47 +0200, Andy Shevchenko wrote:
> On Wed, Jan 21, 2026 at 12:27:57PM +0100, Francesco Lavra wrote:
> > The DRDY_MASK feature implemented in sensor chips marks gyroscope and
> > accelerometer invalid samples (i.e. samples that have been acquired
> > during
> > the settling time of sensor filters) with the special values 0x7FFFh,
> > 0x7FFE, and 0x7FFD.
> > The driver checks FIFO samples against these special values in order to
> > discard invalid samples; however, it does the check regardless of the
> > type
> > of samples being processed, whereas this feature is specific to
> > gyroscope
> > and accelerometer data. This could cause valid samples to be discarded.
> > Fix the above check so that it takes into account the type of samples
> > being
> > processed.
> 
> ...
> 
> >  st_lsm6dsx_push_tagged_data(struct st_lsm6dsx_hw *hw, u8 tag,
> >                             u8 *data, s64 ts)
> >  {
> > -       s16 val = le16_to_cpu(*(__le16 *)data);
> >         struct st_lsm6dsx_sensor *sensor;
> >         struct iio_dev *iio_dev;
> >  
> >         /* invalid sample during bootstrap phase */
> > -       if (val >= ST_LSM6DSX_INVALID_SAMPLE)
> > +       if ((tag == ST_LSM6DSX_GYRO_TAG || tag == ST_LSM6DSX_ACC_TAG)
> > &&
> > +           (s16)le16_to_cpup((__le16 *)data) >=
> > ST_LSM6DSX_INVALID_SAMPLE)
> 
> Since data is u8 *, it might appear on unaligned addresses and the proper
> conversion here is to use get_unaligned_le16() without any of those ugly
> castings.

data here corresponds to iio_buff in st_lsm6dsx_read_tagged_fifo(), which
is declared as __aligned(8), so it cannot appear on unaligned addresses.

> >                 return -EINVAL;
> 


  parent reply	other threads:[~2026-01-21 14:05 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-01-21 11:27 [PATCH v4 0/4] imu: st_lsm6dsx: Add support for rotation sensor Francesco Lavra
2026-01-21 11:27 ` [PATCH v4 1/4] iio: imu: st_lsm6dsx: Set FIFO ODR for accelerometer and gyroscope only Francesco Lavra
2026-01-21 11:27 ` [PATCH v4 2/4] iio: imu: st_lsm6dsx: Set buffer sampling frequency for accelerometer only Francesco Lavra
2026-01-21 11:27 ` [PATCH] iio: imu: st_lsm6dsx: Fix check for invalid samples from FIFO Francesco Lavra
2026-01-21 12:47   ` Andy Shevchenko
2026-01-21 12:51     ` Andy Shevchenko
2026-01-21 14:05     ` Francesco Lavra [this message]
2026-01-21 15:05       ` Andy Shevchenko
2026-01-21 11:27 ` [PATCH] iio: imu: st_lsm6dsx: Add support for rotation sensor Francesco Lavra

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=0168c543e320aeacbbdcdd7f4f3bb0edb81b79f4.camel@baylibre.com \
    --to=flavra@baylibre.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=lorenzo@kernel.org \
    --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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®