The Linux Kernel Mailing List
 help / color / mirror / Atom feed
From: Md Shofiqul Islam <shofiqtest@gmail.com>
To: jic23@kernel.org
Cc: lars@metafoo.de, Michael.Hennerich@analog.com,
	dlechner@baylibre.com, nuno.sa@analog.com, andy@kernel.org,
	linux-iio@vger.kernel.org, linux-kernel@vger.kernel.org,
	Md Shofiqul Islam <shofiqtest@gmail.com>
Subject: [PATCH 0/5] iio: accel: adxl3xx: Add timestamps to FIFO data
Date: Sun, 10 May 2026 11:25:51 +0300	[thread overview]
Message-ID: <20260510082556.3867-1-shofiqtest@gmail.com> (raw)

Five ADXL-family accelerometer drivers (ADXL313, ADXL345, ADXL367,
ADXL372, ADXL380) push buffered samples using iio_push_to_buffers(),
which does not attach a hardware timestamp to the scan data.
Userspace consumers therefore receive samples with no timing
information.

This series adds timestamp support uniformly across the family:

  - A scan buffer struct with an aligned_s64 ts field is added to each
    driver's state struct.  The struct layout ensures the timestamp
    field sits at an 8-byte aligned offset as required by
    iio_push_to_buffers_with_timestamp().

  - In the FIFO push loop, FIFO data is copied into scan.channels via
    memcpy(), then iio_push_to_buffers_with_timestamp() is called with
    a single timestamp captured once per interrupt with
    iio_get_time_ns().  Using one timestamp per IRQ is consistent with
    the existing approach in the same handlers for event timestamps.

  - For ADXL367, the helper adxl367_push_fifo_data() gains a s64 ts
    parameter so the timestamp captured in the IRQ handler is passed
    through instead of calling iio_get_time_ns() a second time.

  - For ADXL372 and ADXL380, where the IRQ handler already called
    iio_get_time_ns() for the event push, the same captured timestamp
    is now also passed to the FIFO push, removing the duplicate call.

The ADXL313 and ADXL345 drivers always scan all three axes together
(available_scan_masks contains only the full X|Y|Z mask), so their
scan buffer layout is fixed.  The ADXL367, ADXL372, and ADXL380
drivers support variable scan masks; fifo_set_size tracks the number
of enabled channels per sample set and is used as the memcpy length.

Md Shofiqul Islam (5):
  iio: accel: adxl372: Add timestamp to FIFO data
  iio: accel: adxl380: Add timestamp to FIFO data
  iio: accel: adxl367: Add timestamp to FIFO data
  iio: accel: adxl313: Add timestamp to FIFO data
  iio: accel: adxl345: Add timestamp to FIFO data

 drivers/iio/accel/adxl313.h      |  4 ++++
 drivers/iio/accel/adxl313_core.c |  8 ++++++--
 drivers/iio/accel/adxl345_core.c | 12 ++++++++++--
 drivers/iio/accel/adxl367.c      | 17 +++++++++++++----
 drivers/iio/accel/adxl372.c      | 13 +++++++++++--
 drivers/iio/accel/adxl380.c      | 15 ++++++++++++---
 6 files changed, 56 insertions(+), 13 deletions(-)

-- 
2.54.0.windows.1


             reply	other threads:[~2026-05-10  8:26 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-05-10  8:25 Md Shofiqul Islam [this message]
2026-05-10  8:25 ` [PATCH 1/5] iio: accel: adxl372: Add timestamp to FIFO data Md Shofiqul Islam
2026-05-10  8:25 ` [PATCH 2/5] iio: accel: adxl380: " Md Shofiqul Islam
2026-05-10  8:25 ` [PATCH 3/5] iio: accel: adxl367: " Md Shofiqul Islam
2026-05-10  8:25 ` [PATCH 4/5] iio: accel: adxl313: " Md Shofiqul Islam
2026-05-10  8:25 ` [PATCH 5/5] iio: accel: adxl345: " Md Shofiqul Islam
2026-05-10 12:58 ` [PATCH 0/5] iio: accel: adxl3xx: Add timestamps " Andy Shevchenko
     [not found]   ` <CAOTCDVsUF1qaYgSGa4hcDYOqmMpkK2G+HYeQ=ShQ1oEbM8nGJQ@mail.gmail.com>
2026-05-11 14:41     ` 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=20260510082556.3867-1-shofiqtest@gmail.com \
    --to=shofiqtest@gmail.com \
    --cc=Michael.Hennerich@analog.com \
    --cc=andy@kernel.org \
    --cc=dlechner@baylibre.com \
    --cc=jic23@kernel.org \
    --cc=lars@metafoo.de \
    --cc=linux-iio@vger.kernel.org \
    --cc=linux-kernel@vger.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