[PATCH v2 0/2] Add support for ADG1414 Serially-Controlled Octal SPST Switches
From: Kim Seer Paller
Date: Thu Feb 13 2025 - 08:17:38 EST
Apologies for the long delay in following up on this patch series.
I checked the gpio-regmap abstraction to achieve a smaller footprint,
but found that it may not suitable for the ADG1414. The ADG1414 device
requires direct manipulation of individual bits to control the switches.
In the regmap_config, reg_bits and val_bits need to be set to reflect a
byte for instruction and a byte for data. However, the ADG1414 device
directly changes the bit itself (e.g., bit 0 to change on/off switch 0).
I think the standard regmap read/write API may not be applicable.
Additionally, the size of the transaction dynamically changes based on
the number of daisy-chained devices.
This version address the feedback provided and includes the necessary
improvements.
ADG1414:
* Define a static struct regmap_bus to wrap custom read/write functions.
* Use devm_mutex_init() to initialize the mutex.
Bindings:
* Modify filename to adi,adg1414-gpio.
* Add type definition for #daisy-chained-devices property.
* Modify title and description to describe hardware.
- Kim Seer Paller
Signed-off-by: Kim Seer Paller <kimseer.paller@xxxxxxxxxx>
---
Kim Seer Paller (2):
dt-bindings: gpio: add adg1414
gpio: gpio-adg1414: New driver
.../devicetree/bindings/gpio/adi,adg1414-gpio.yaml | 68 +++++++++
MAINTAINERS | 7 +
drivers/gpio/Kconfig | 10 ++
drivers/gpio/Makefile | 1 +
drivers/gpio/gpio-adg1414.c | 162 +++++++++++++++++++++
5 files changed, 248 insertions(+)
---
base-commit: 4dc1d1bec89864d8076e5ab314f86f46442bfb02
change-id: 20250213-for_upstream-a490d1a04bf2
Best regards,
--
Kim Seer Paller <kimseer.paller@xxxxxxxxxx>