[PATCH v6 3/5] iio: accel: adxl345: Expose IIO_EV_INFO_VALUE for double tap
From: Taha Ed-Dafili
Date: Thu Feb 26 2026 - 10:16:27 EST
The ADXL345 uses a single hardware register (ADXL345_REG_THRESH_TAP) to
store the threshold for both single tap and double tap events.
Currently, the driver only exposes the IIO_EV_INFO_VALUE attribute for
the single tap event.
However, the IIO ABI dictates that if an event is supported, its
associated configuration attributes should be exposed to userspace. This
applies even if writing to one channel property alters the value of
another due to shared underlying hardware state.
Add IIO_EV_INFO_VALUE to the double tap event specification to ensure
full ABI compliance.
Suggested-by: Jonathan Cameron <jic23@xxxxxxxxxx>
Signed-off-by: Taha Ed-Dafili <0rayn.dev@xxxxxxxxx>
---
drivers/iio/accel/adxl345_core.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/drivers/iio/accel/adxl345_core.c b/drivers/iio/accel/adxl345_core.c
index 78e3f799ecc1..96d1417d77c6 100644
--- a/drivers/iio/accel/adxl345_core.c
+++ b/drivers/iio/accel/adxl345_core.c
@@ -235,7 +235,9 @@ static const struct iio_event_spec adxl345_events[] = {
/* double tap */
.type = IIO_EV_TYPE_GESTURE,
.dir = IIO_EV_DIR_DOUBLETAP,
- .mask_shared_by_type = BIT(IIO_EV_INFO_ENABLE) |
+ .mask_shared_by_type =
+ BIT(IIO_EV_INFO_ENABLE) |
+ BIT(IIO_EV_INFO_VALUE) |
BIT(IIO_EV_INFO_RESET_TIMEOUT) |
BIT(IIO_EV_INFO_TAP2_MIN_DELAY),
},
--
2.47.3