gpio: i8255: Migrate to gpio-regmap API
authorWilliam Breathitt Gray <william.gray@linaro.org>
Tue, 27 Dec 2022 14:09:43 +0000 (09:09 -0500)
committerBartosz Golaszewski <bartosz.golaszewski@linaro.org>
Mon, 30 Jan 2023 14:55:28 +0000 (15:55 +0100)
commit0b7c490d7de3255ad1db82000b42f3f021f6dbf0
treedc56d7f84a121be95d2a249c1cd8ae4b9f96bf1d
parent59e2131accfd1f4964c766fabdcd19419f1c551b
gpio: i8255: Migrate to gpio-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.

By leveraging the gpio-regmap API, the i8255 library is reduced to
simply a devm_i8255_regmap_register() function, a configuration
structure struct i8255_regmap_config, and a helper macro
i8255_volatile_regmap_range() provided to simplify volatile PPI register
hinting for the regmap.

Legacy functions and code will be removed once all consumers have
migrated to the new i8255 library interface.

Suggested-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Signed-off-by: William Breathitt Gray <william.gray@linaro.org>
Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
drivers/gpio/Kconfig
drivers/gpio/gpio-i8255.c
drivers/gpio/gpio-i8255.h