[PATCH v2 00/15] gpio: replace legacy bgpio_init() with its modernized alternative - part 4
Bartosz Golaszewski
brgl at bgdev.pl
Wed Sep 10 00:12:36 PDT 2025
Here's the final part of the generic GPIO chip conversions. Once all the
existing users are switched to the new API, the final patch in the
series removes bgpio_init(), moves the gpio-mmio fields out of struct
gpio_chip and into struct gpio_generic_chip and adjusts gpio-mmio.c to
the new situation.
Down the line we could probably improve gpio-mmio.c by using lock guards
and replacing the - now obsolete - "bgpio" prefix with "gpio_generic" or
something similar but this series is already big as is so I'm leaving
that for the future.
Tested in qemu on vexpress-a9.
Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski at linaro.org>
---
Changes in v2:
- Use a more common syntax for compound literals
- Link to v1: https://lore.kernel.org/r/20250909-gpio-mmio-gpio-conv-part4-v1-0-9f723dc3524a@linaro.org
---
Bartosz Golaszewski (15):
gpio: loongson1: allow building the module with COMPILE_TEST enabled
gpio: loongson1: use new generic GPIO chip API
gpio: hlwd: use new generic GPIO chip API
gpio: ath79: use new generic GPIO chip API
gpio: ath79: use the generic GPIO chip lock for IRQ handling
gpio: xgene-sb: use generic GPIO chip register read and write APIs
gpio: brcmstb: use new generic GPIO chip API
gpio: mt7621: use new generic GPIO chip API
gpio: mt7621: use the generic GPIO chip lock for IRQ handling
gpio: menz127: use new generic GPIO chip API
gpio: sifive: use new generic GPIO chip API
gpio: spacemit-k1: use new generic GPIO chip API
gpio: sodaville: use new generic GPIO chip API
gpio: mmio: use new generic GPIO chip API
gpio: move gpio-mmio-specific fields out of struct gpio_chip
drivers/gpio/Kconfig | 2 +-
drivers/gpio/TODO | 5 -
drivers/gpio/gpio-ath79.c | 88 +++++-----
drivers/gpio/gpio-brcmstb.c | 112 +++++++------
drivers/gpio/gpio-hlwd.c | 105 ++++++------
drivers/gpio/gpio-loongson1.c | 40 +++--
drivers/gpio/gpio-menz127.c | 31 ++--
drivers/gpio/gpio-mlxbf2.c | 2 +-
drivers/gpio/gpio-mmio.c | 350 +++++++++++++++++++++-------------------
drivers/gpio/gpio-mpc8xxx.c | 5 +-
drivers/gpio/gpio-mt7621.c | 80 ++++-----
drivers/gpio/gpio-sifive.c | 73 +++++----
drivers/gpio/gpio-sodaville.c | 20 ++-
drivers/gpio/gpio-spacemit-k1.c | 28 +++-
drivers/gpio/gpio-xgene-sb.c | 5 +-
include/linux/gpio/driver.h | 44 -----
include/linux/gpio/generic.h | 67 +++++---
17 files changed, 548 insertions(+), 509 deletions(-)
---
base-commit: 65dd046ef55861190ecde44c6d9fcde54b9fb77d
change-id: 20250904-gpio-mmio-gpio-conv-part4-5e1f772ba724
Best regards,
--
Bartosz Golaszewski <bartosz.golaszewski at linaro.org>
More information about the linux-riscv
mailing list