linux-gpio.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v1 0/5] gpio: regmap: Make use of 'ngpios' property
@ 2025-02-13 19:48 Andy Shevchenko
  2025-02-13 19:48 ` [PATCH v1 1/5] gpiolib: Extract gpiochip_choose_fwnode() for wider use Andy Shevchenko
                   ` (7 more replies)
  0 siblings, 8 replies; 22+ messages in thread
From: Andy Shevchenko @ 2025-02-13 19:48 UTC (permalink / raw)
  To: Andy Shevchenko, Bartosz Golaszewski, linux-gpio, linux-kernel
  Cc: Michael Walle, Linus Walleij, Bartosz Golaszewski,
	athieu Dubois-Briand

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@bootlin.com>

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


^ permalink raw reply	[flat|nested] 22+ messages in thread

end of thread, other threads:[~2025-02-21  8:45 UTC | newest]

Thread overview: 22+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-02-13 19:48 [PATCH v1 0/5] gpio: regmap: Make use of 'ngpios' property Andy Shevchenko
2025-02-13 19:48 ` [PATCH v1 1/5] gpiolib: Extract gpiochip_choose_fwnode() for wider use Andy Shevchenko
2025-02-13 19:48 ` [PATCH v1 2/5] gpiolib: Use fwnode instead of device in gpiochip_get_ngpios() Andy Shevchenko
2025-02-13 19:48 ` [PATCH v1 3/5] gpio: regmap: Group optional assignments together for better understanding Andy Shevchenko
2025-02-17  7:40   ` Michael Walle
2025-02-13 19:48 ` [PATCH v1 4/5] gpio: regmap: Move optional assignments down in the code Andy Shevchenko
2025-02-17  7:43   ` Michael Walle
2025-02-13 19:48 ` [PATCH v1 5/5] gpio: regmap: Allow ngpio to be read from the property Andy Shevchenko
2025-02-17  7:44   ` Michael Walle
2025-02-14  9:18 ` [PATCH v1 0/5] gpio: regmap: Make use of 'ngpios' property Mathieu Dubois-Briand
2025-02-14 13:49   ` Andy Shevchenko
2025-02-14 14:07     ` Mathieu Dubois-Briand
2025-02-14 10:50 ` Linus Walleij
2025-02-20 13:18   ` Andy Shevchenko
2025-02-20 13:22     ` Bartosz Golaszewski
2025-02-20 13:40       ` Andy Shevchenko
2025-02-20 13:41         ` Andy Shevchenko
2025-02-20 13:42           ` Bartosz Golaszewski
2025-02-20 14:07             ` Andy Shevchenko
2025-02-20 14:11               ` Bartosz Golaszewski
2025-02-20 14:15                 ` Andy Shevchenko
2025-02-21  8:45 ` Bartosz Golaszewski

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).