[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20251012180619.195244-1-akshayaj.lkd@gmail.com>
Date: Sun, 12 Oct 2025 23:36:07 +0530
From: Akshay Jindal <akshayaj.lkd@...il.com>
To: dan@...obertson.com,
jic23@...nel.org,
dlechner@...libre.com,
nuno.sa@...log.com,
andy@...nel.org
Cc: Akshay Jindal <akshayaj.lkd@...il.com>,
shuah@...nel.org,
linux-iio@...r.kernel.org,
linux-kernel@...r.kernel.org
Subject: [PATCH v5 0/6] iio: accel: bma400: Refactor GENINTR config and register macros
This series refactors the BMA400 driver with a focus on generic interrupt
configuration and related register usage. The main changes reduce
usage of hard-coded values by introducing macros and formula-based
register addressing, and add a centralized lookup indexed on iio event
direction.
Alongside these updates, the series also reorganizes and renames register
and field macros for consistency with the datasheet, and extends comments
for additional clarity.
All patches are pure refactoring. No functional changes are intended.
Akshay Jindal (6):
iio: accel: bma400: Reorganize and rename register and field macros
iio: accel: bma400: Use macros for generic event configuration values
iio: accel: bma400: Use index-based register addressing and lookup
iio: accel: bma400: Replace bit shifts with FIELD_PREP() and FIELD_GET()
iio: accel: bma400: Rename activity_event_en() to generic_event_en()
iio: accel: bma400: Add detail to comments in GEN INTR configuration
Changes since v4:
- Add INT_STATx field macros corresponding to used INT_CONFIGx fields.
- Make INT_STATx field macro names consistent with others.
- Tied the INT_STATx field to correct INT_STAT register.
- Modified changelog of PATCH 1/6 due to addition of INT_STATx fields.
- Modified changelog of PATCH 4/6.
Changes since v3:
- Insert a new patch into the patch series for replacing explicit bit
shifts with FIELD_GET and FIELD_PREP macros
- Assigned explicit values to reg field enums introduced.
Changes since v2:
- Split single patch into five smaller patches as suggested
- Addressed review comments related to trailing comma [Patch 2/5]
- Extended renaming of macros to TAP_CONFIG registers [Patch 1/5]
- Addressed review comment received regarding write then replace in
activity_event_en() [Patch 3/5]
Testing Summary:
- Tested on raspberrypi 4b and 7-semi bma400 sensor breakout board.
- Since no functional impact is there, so before functionality is
expected to be equal to after change functionality.
- Tested mapping of GEN1 and GEN2 both on INT1 pin as before.
- Tested both activity and inactivity detection by setting attributes
events/in_accel_mag_falling_en as well as events/in_accel_mag_rising_en.
- Did read and writes on various attributes such that write_event_config(),
write_event_value() and read_event_value() callbacks are triggered.
drivers/iio/accel/bma400.h | 155 +++++++++-----
drivers/iio/accel/bma400_core.c | 349 ++++++++++++++++++--------------
2 files changed, 292 insertions(+), 212 deletions(-)
--
2.43.0
Powered by blists - more mailing lists