[PATCH v1 0/5] gpio: regmap: Make use of 'ngpios' property
From: Andy Shevchenko
Date: Thu Feb 13 2025 - 14:57:08 EST
It appears that regmap GPIO doesn't take into account 'ngpios' property
and requires hard coded values or duplication of the parsing the same
outside of GPIO library. This miniseries addresses that.
For the record, I have checked all bgpio_init() users and haven't seen
the suspicious code that this series might break, e.g., an equivalent of
something like this:
static int foo_probe(struct device *dev)
{
struct gpio_chip *gc = devm_kzalloc(...);
struct fwnode_handle *fwnode = ...; // NOT dev_fwnode(dev)!
...
gc->parent = dev;
gc->fwnode = fwnode;
ret = bgpio_init(gc, dev, ...);
...
}
Reported-by: Mathieu Dubois-Briand <mathieu.dubois-briand@xxxxxxxxxxx>
Andy Shevchenko (5):
gpiolib: Extract gpiochip_choose_fwnode() for wider use
gpiolib: Use fwnode instead of device in gpiochip_get_ngpios()
gpio: regmap: Group optional assignments together for better
understanding
gpio: regmap: Move optional assignments down in the code
gpio: regmap: Allow ngpio to be read from the property
drivers/gpio/gpio-regmap.c | 41 +++++++++++++++++++++----------------
drivers/gpio/gpiolib.c | 27 ++++++++++++++++--------
include/linux/gpio/regmap.h | 4 ++--
3 files changed, 43 insertions(+), 29 deletions(-)
--
2.45.1.3035.g276e886db78b