[PATCH v5 0/4] Migrate IDIO-16 GPIO drivers to regmap API

William Breathitt Gray posted 4 patches 1 year, 1 month ago
drivers/gpio/Kconfig            |   7 +-
drivers/gpio/gpio-104-idio-16.c | 286 +++++++------------------------
drivers/gpio/gpio-idio-16.c     | 254 ++++++++++++++-------------
drivers/gpio/gpio-idio-16.h     |  79 +++------
drivers/gpio/gpio-pci-idio-16.c | 294 +++++++-------------------------
5 files changed, 289 insertions(+), 631 deletions(-)
[PATCH v5 0/4] Migrate IDIO-16 GPIO drivers to regmap API
Posted by William Breathitt Gray 1 year, 1 month ago
Changes in v5:
 - Remove regmap_config max_register lines as superfluous
 - Enable use_raw_spinlock to prevent deadlocks when running -rt kernels

The regmap API supports IO port accessors so we can take advantage of
regmap abstractions rather than handling access to the device registers
directly in the driver. The 104-idio-16 and pci-idio-16 modules depend
on the IDIO-16 library and are thus updated accordingly.

By leveraging the regmap API, the idio-16 library is reduced to simply a
devm_idio_16_regmap_register() function and a configuration structure
struct idio_16_regmap_config.

This patchset depends on the "Drop map from handle_mask_sync()
parameters" patchset [0].

[0] https://lore.kernel.org/all/cover.1679323449.git.william.gray@linaro.org/

William Breathitt Gray (4):
  gpio: idio-16: Migrate to the regmap API
  gpio: 104-idio-16: Migrate to the regmap API
  gpio: pci-idio-16: Migrate to the regmap API
  gpio: idio-16: Remove unused legacy interface

 drivers/gpio/Kconfig            |   7 +-
 drivers/gpio/gpio-104-idio-16.c | 286 +++++++------------------------
 drivers/gpio/gpio-idio-16.c     | 254 ++++++++++++++-------------
 drivers/gpio/gpio-idio-16.h     |  79 +++------
 drivers/gpio/gpio-pci-idio-16.c | 294 +++++++-------------------------
 5 files changed, 289 insertions(+), 631 deletions(-)


base-commit: 7b59bdbc3965ca8add53e084af394c13a2be22a8
prerequisite-patch-id: cd19046150b7cff1be4ac7152198777aa960a3df
prerequisite-patch-id: bd3e3830d9ce4f3876a77483364d7190b7fdffa7
-- 
2.39.2