|
|
Subscribe / Log in / New account

iio: accel: adxl345: add interrupt based sensor events

From:  Lothar Rubusch <l.rubusch-AT-gmail.com>
To:  lars-AT-metafoo.de, Michael.Hennerich-AT-analog.com, jic23-AT-kernel.org
Subject:  [PATCH v2 00/14] iio: accel: adxl345: add interrupt based sensor events
Date:  Mon, 10 Feb 2025 11:01:05 +0000
Message-ID:  <20250210110119.260858-1-l.rubusch@gmail.com>
Cc:  linux-iio-AT-vger.kernel.org, linux-kernel-AT-vger.kernel.org, eraretuya-AT-gmail.com, l.rubusch-AT-gmail.com
Archive-link:  Article

Add several interrupt based sensor detection events:
- single tap
- double tap
- free fall
- activity
- inactivity
- sample frequency
- frequency g range approach
- documentation

All the needed parameters for each and methods of adjusting them, and
forward a resulting IIO event for each to the IIO channel.

Q: Please have a look into event handling, I'm not sure there seems
to be something open (if more simultaneous events arrive)?

Q: Please, let me know if the single ABI change is legitimate, where
I need to document it?

Q: Please, also have a focus on the scale factor handling, is it
correctly setup? (I think) I can see it appearing in iio_info.

Signed-off-by: Lothar Rubusch <l.rubusch@gmail.com>
---
v1 -> v2:
- implementation of all events (but tap2 suppress bit) by means IIO ABI
- add sample frequency / ODR configuration
- add g ranges configuration
- add activity/inactivity using auto-sleep and powersave
- add dynamic adjustment of default values for
  activity/inactivity thresholds and time for inactivity based on ODR
  and g range (can be overwritten)
- add sensor documentation

Lothar Rubusch (14):
  iio: accel: adxl345: reorganize measurement enable
  iio: accel: adxl345: add debug register access
  iio: accel: adxl345: reorganize irq handler
  iio: accel: adxl345: refac set_interrupts and IRQ map
  iio: accel: adxl345: add single tap feature
  iio: accel: adxl345: add double tap feature
  iio: accel: adxl345: add double tap suppress bit
  iio: accel: adxl345: add freefall feature
  iio: accel: adxl345: extend sample frequency adjustments
  iio: accel: adxl345: add g-range configuration
  iio: accel: adxl345: add activity event feature
  iio: accel: adxl345: add inactivity feature
  iio: accel: adxl345: add coupling detection for activity/inactivity
  docs: iio: add documentation for adxl345 driver

 Documentation/iio/adxl345.rst    |  401 +++++++++
 drivers/iio/accel/adxl345.h      |    3 +-
 drivers/iio/accel/adxl345_core.c | 1378 ++++++++++++++++++++++++++++--
 3 files changed, 1703 insertions(+), 79 deletions(-)
 create mode 100644 Documentation/iio/adxl345.rst

-- 
2.39.5




Copyright © 2025, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds