[PATCH v6 0/3] gpio: generic regmap implementation

From: Michael Walle
Date: Thu May 28 2020 - 10:59:48 EST


This series is a split off of the sl28cpld series:
https://lore.kernel.org/linux-gpio/20200423174543.17161-1-michael@xxxxxxxx/

I wasn't sure if I should also include the gpiochip_irqchip_add_domain()
patch here. So feel free to skip it. OTOH if you use interrupts with
gpio-regmap it is quite handy.

For an actual user see the patch 11/16 ("gpio: add support for the sl28cpld
GPIO controller") of the series above.

Changes since v5:
- add names property
- addressed Alex' remarks:
- moved header from i/l/gpio-regmap.h to i/l/gpio/regmap.h
- fixed kernel doc
- described rules how to use the register base offsets
- missing forward declarations
- style changes
- return -EOPNOTSUPP, in code path we should never reach
- added check to have input and output base regs if there is a direction
register
- added MAINTAINERS patch

Changes since v4:
- add comment about can_sleep
- fix config->label typo
- add config->names property

Changes since v3:
- set reg_dat_base, that was actually broken
- fix typo
- fix swapped reg_in_dir/reg_out_dir documentation
- use "goto err" in error path in gpio_regmap_register()

Michael Walle (3):
gpiolib: Introduce gpiochip_irqchip_add_domain()
gpio: add a reusable generic gpio_chip using regmap
MAINTAINERS: Add gpio regmap section

MAINTAINERS | 6 +
drivers/gpio/Kconfig | 4 +
drivers/gpio/Makefile | 1 +
drivers/gpio/gpio-regmap.c | 349 ++++++++++++++++++++++++++++++++++++
drivers/gpio/gpiolib.c | 20 +++
include/linux/gpio/driver.h | 3 +
include/linux/gpio/regmap.h | 86 +++++++++
7 files changed, 469 insertions(+)
create mode 100644 drivers/gpio/gpio-regmap.c
create mode 100644 include/linux/gpio/regmap.h

--
2.20.1