drivers/iio/adc/xilinx-ams.c | 190 +++++++++++++---------------------- 1 file changed, 71 insertions(+), 119 deletions(-)
This series addresses significant code duplication in alarm handling
logic across the Xilinx AMS IIO driver.
To address this, the series introduces a centralized table-driven
mapping (alarm_map) that replaces multiple switch statements spread
across the driver.
This improves:
- maintainability (single source of truth for mappings)
- readability (removes repeated switch logic)
- extensibility (new alarms require only table updates)
No functional changes are intended.
Series overview:
- Patch 1: fix out-of-bounds channel lookup
- Patch 2: convert mutex handling to guard(mutex)
- Patch 3: introduce table-driven alarm mapping
v1 -> v2:
- Fixed Fixes tag format
- Replaced AMS_ALARM_INVALID with AMS_ALARM_NONE
- Changed alarm_map base_offset type
v2 -> v3:
- Replace 'i >= num_channels' with 'i == num_channels'
- Add missing trailing comma in alarm_map array initializer
Guilherme Ivo Bozi (3):
iio: adc: xilinx-ams: fix out-of-bounds channel lookup in event
handling
iio: adc: xilinx-ams: use guard(mutex) for automatic locking
iio: adc: xilinx-ams: refactor alarm mapping to table-driven approach
drivers/iio/adc/xilinx-ams.c | 190 +++++++++++++----------------------
1 file changed, 71 insertions(+), 119 deletions(-)
--
2.47.3
Hi Guilherme, Thanks for working on this. The refactoring approach looks good overall, but all three patches have indentation issues and patch 3 has one semantic issue. Please see my comments on each patch. On 4/14/2026 11:40 PM, Guilherme Ivo Bozi wrote: > This series addresses significant code duplication in alarm handling > logic across the Xilinx AMS IIO driver. > > To address this, the series introduces a centralized table-driven > mapping (alarm_map) that replaces multiple switch statements spread > across the driver. > > This improves: > - maintainability (single source of truth for mappings) > - readability (removes repeated switch logic) > - extensibility (new alarms require only table updates) > > No functional changes are intended. > > Series overview: > - Patch 1: fix out-of-bounds channel lookup > - Patch 2: convert mutex handling to guard(mutex) > - Patch 3: introduce table-driven alarm mapping > > v1 -> v2: > - Fixed Fixes tag format > - Replaced AMS_ALARM_INVALID with AMS_ALARM_NONE > - Changed alarm_map base_offset type > > v2 -> v3: > - Replace 'i >= num_channels' with 'i == num_channels' > - Add missing trailing comma in alarm_map array initializer > > Guilherme Ivo Bozi (3): > iio: adc: xilinx-ams: fix out-of-bounds channel lookup in event > handling > iio: adc: xilinx-ams: use guard(mutex) for automatic locking > iio: adc: xilinx-ams: refactor alarm mapping to table-driven approach > > drivers/iio/adc/xilinx-ams.c | 190 +++++++++++++---------------------- > 1 file changed, 71 insertions(+), 119 deletions(-) > > -- > 2.47.3 > Salih
On Tue, 14 Apr 2026 19:40:32 -0300 Guilherme Ivo Bozi <guilherme.bozi@usp.br> wrote: > This series addresses significant code duplication in alarm handling > logic across the Xilinx AMS IIO driver. > > To address this, the series introduces a centralized table-driven > mapping (alarm_map) that replaces multiple switch statements spread > across the driver. > > This improves: > - maintainability (single source of truth for mappings) > - readability (removes repeated switch logic) > - extensibility (new alarms require only table updates) > > No functional changes are intended. This series looks fine to me. Given the AMD Xilinx folk are fairly active reviewers I'm just waiting on them taking a look. > > Series overview: > - Patch 1: fix out-of-bounds channel lookup > - Patch 2: convert mutex handling to guard(mutex) > - Patch 3: introduce table-driven alarm mapping > > v1 -> v2: > - Fixed Fixes tag format > - Replaced AMS_ALARM_INVALID with AMS_ALARM_NONE > - Changed alarm_map base_offset type > > v2 -> v3: > - Replace 'i >= num_channels' with 'i == num_channels' > - Add missing trailing comma in alarm_map array initializer > > Guilherme Ivo Bozi (3): > iio: adc: xilinx-ams: fix out-of-bounds channel lookup in event > handling > iio: adc: xilinx-ams: use guard(mutex) for automatic locking > iio: adc: xilinx-ams: refactor alarm mapping to table-driven approach > > drivers/iio/adc/xilinx-ams.c | 190 +++++++++++++---------------------- > 1 file changed, 71 insertions(+), 119 deletions(-) >
> This series looks fine to me. > > Given the AMD Xilinx folk are fairly active reviewers I'm just > waiting on them taking a look. Hi, just checking in on this series since it’s been some time. Any updates from AMD Xilinx review or anything else needed from my side? -- Thanks, Guilherme Ivo
Hi Ivo, On 5/12/26 13:00, Guilherme Ivo Bozi wrote: >> This series looks fine to me. >> >> Given the AMD Xilinx folk are fairly active reviewers I'm just >> waiting on them taking a look. > Hi, just checking in on this series since it’s been some time. > Any updates from AMD Xilinx review or anything else needed from > my side? Checking internally who can test this. Please give me some time. Thanks, Michal
© 2016 - 2026 Red Hat, Inc.