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

William Breathitt Gray posted 6 patches 2 years, 7 months ago
There is a newer version of this series
drivers/base/regmap/regmap-irq.c |  23 ++-
drivers/gpio/Kconfig             |   7 +-
drivers/gpio/gpio-104-dio-48e.c  |   6 +-
drivers/gpio/gpio-104-idio-16.c  | 294 ++++++++----------------------
drivers/gpio/gpio-idio-16.c      | 255 ++++++++++++++------------
drivers/gpio/gpio-idio-16.h      |  80 +++------
drivers/gpio/gpio-pci-idio-16.c  | 295 +++++++------------------------
include/linux/regmap.h           |   2 +
8 files changed, 326 insertions(+), 636 deletions(-)
[PATCH 0/6] Migrate IDIO-16 GPIO drivers to regmap API
Posted by William Breathitt Gray 2 years, 7 months ago
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.

The 104-IDIO-16 lacks a status register (as does the 104-DIO-48E), so a
no_status flag is introduced to the regmap-irq API to properly handle
such cases and avoid hacks. The 104-dio-48e module is updated in a
subsequent patch to take advantage of this new no_status flag.

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.

William Breathitt Gray (6):
  regmap-irq: Add no_status support
  gpio: 104-dio-48e: Utilize no_status regmap-irq flag
  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/base/regmap/regmap-irq.c |  23 ++-
 drivers/gpio/Kconfig             |   7 +-
 drivers/gpio/gpio-104-dio-48e.c  |   6 +-
 drivers/gpio/gpio-104-idio-16.c  | 294 ++++++++----------------------
 drivers/gpio/gpio-idio-16.c      | 255 ++++++++++++++------------
 drivers/gpio/gpio-idio-16.h      |  80 +++------
 drivers/gpio/gpio-pci-idio-16.c  | 295 +++++++------------------------
 include/linux/regmap.h           |   2 +
 8 files changed, 326 insertions(+), 636 deletions(-)


base-commit: 4827aae061337251bb91801b316157a78b845ec7
-- 
2.39.1