[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <cover.1677547393.git.william.gray@linaro.org>
Date: Mon, 27 Feb 2023 20:53:39 -0500
From: William Breathitt Gray <william.gray@...aro.org>
To: linus.walleij@...aro.org, brgl@...ev.pl
Cc: broonie@...nel.org, linux-gpio@...r.kernel.org,
linux-kernel@...r.kernel.org, michael@...le.cc, quarium@...il.com,
jhentges@...esio.com, jay.dolan@...esio.com,
William Breathitt Gray <william.gray@...aro.org>
Subject: [PATCH 0/3] Migrate PCIe-IDIO-24 GPIO driver to the regmap API
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.
A patch to pass the device regmap and irq_drv_data as a parameters for
the struct regmap_irq_chip set_type_config() is included. This is needed
by idio_24_set_type_config() in order to update the type configuration
on the device as well as irq_drv_data for idio_24_handle_mask_sync().
A patch moving the struct gpio_regmap declaration to linux/gpio/regmap.h
is also included. This is needed by idio_24_reg_mask_xlate() in order to
determine the current offset's direction by using gpio->regmap in
regmap_read(). One point to consider is whether an alternative solution
is better of passing regmap in the reg_mask_xlate() parameter list; this
would avoid the need to include <linux/gpio/driver.h> in order to
resolve an incomplete type warning for struct gpio_chip due to the move.
William Breathitt Gray (3):
regmap: Pass regmap and irq_drv_data as parameters for
set_type_config()
gpio: gpio-regmap: Expose struct gpio_regmap in linux/gpio/regmap.h
gpio: pcie-idio-24: Migrate to the regmap API
drivers/base/regmap/regmap-irq.c | 13 +-
drivers/gpio/Kconfig | 3 +
drivers/gpio/gpio-pcie-idio-24.c | 697 ++++++++++++-------------------
drivers/gpio/gpio-regmap.c | 20 -
include/linux/gpio/regmap.h | 23 +-
include/linux/regmap.h | 12 +-
6 files changed, 303 insertions(+), 465 deletions(-)
base-commit: 4827aae061337251bb91801b316157a78b845ec7
--
2.39.2
Powered by blists - more mailing lists