[PATCH v3 00/22] gpio: Improvements around device-id arrays

From: Uwe Kleine-König (The Capable Hub)

Date: Mon Oct 26 2026 - 12:30:49 EST


Hello,

as with v1 and v2 the original motivation for this series are the
patches that convert the arrays to use named initializers, see
https://lore.kernel.org/all/cover.1780048925.git.u.kleine-koenig@xxxxxxxxxxxx/
for the idea behind it. Then by not closing the eyes for small issues
spotted while working on that, this series grew a bit.

Changes since v2 (available at
https://lore.kernel.org/all/cover.1784133987.git.u.kleine-koenig@xxxxxxxxxxxx/)

- Rebase to current next/master (new changes to
drivers/gpio/gpio-mlxbf.c, drivers/gpio/gpio-mlxbf2.c,
drivers/gpio/gpio-74x164.c)
- Fix a few commit logs to reference the right *_device_id names
- Drop all tags for Andy
- Drop a questionable MODULE_DEVICE_TABLE(acpi, ...) for drivers/gpio/gpio-usbio.c

Checkpatch only reports two undocumented device-tree compatibles:

WARNING: DT compatible string "apm,xgene-gpio-v2" appears un-documented -- check ./Documentation/devicetree/bindings/
WARNING: DT compatible string "marvell,pxa1928-gpio" appears un-documented -- check ./Documentation/devicetree/bindings/

I felt free to ignore these as this is a pre-existing issue and
out-of-context for this series.

Andy didn't like how this series is split into patches before, I do. I
think it's not possible to please everyone's opinion regarding minimal
changes per patch vs grouping similar changes in patches and about what
is considered churn. I'm happy about every patch in this series that
goes in, so feel free to apply patches that you like and that don't get
resistance even if other's do. If patches don't apply, just drop them,
I'll catch up on them eventually.

Best regards
Uwe

Uwe Kleine-König (The Capable Hub) (22):
gpio: Remove __maybe_unused annotations from acpi_device_id arrays
gpio: fxl6408: Remove __maybe_unused annotations from of_device_id
array
gpio: Drop unused assignment of acpi_device_id driver data
gpio: max7301: Drop unused assignment of spi_device_id driver data
gpio: mmio: Drop unused assignment of platform_device_id driver data
gpio: ljca: Drop unused assignment of auxiliary_device_id driver data
gpio: xgene: Add missing ACPI module annotation
gpio: sodaville: Add missing PCI module annotations
gpio: Add missing OF module annotations
gpio: pxa: Add missing platform module annotations
gpio: pl061: Use empty initializer for amba_id terminator
gpio: Use named initializers for acpi_device_id array
gpio: pcf857x: Use named initializers for of_device_id array
gpio: bd73800: Use named initializers for platform_device_id array
gpio: Use named initializers for spi_device_id array
gpio: virtio: Use a named initializer for virtio_device_id array
gpio: Unify style of acpi_device_id arrays
gpio: Unify style of of_device_id arrays
gpio: max77620: Unify style of platform_device_id array
gpio: Unify style of spi_device_id arrays
gpio: Unify style of pci_device_id arrays
gpio: Unify style of various *_device_id arrays

drivers/gpio/gpio-74x164.c | 4 ++--
drivers/gpio/gpio-adnp.c | 4 ++--
drivers/gpio/gpio-aggregator.c | 2 +-
drivers/gpio/gpio-altera-a10sr.c | 2 +-
drivers/gpio/gpio-altera.c | 4 ++--
drivers/gpio/gpio-amd8111.c | 2 +-
drivers/gpio/gpio-amdpt.c | 8 ++++----
drivers/gpio/gpio-aspeed-sgpio.c | 10 ++++-----
drivers/gpio/gpio-aspeed.c | 10 ++++-----
drivers/gpio/gpio-ath79.c | 2 +-
drivers/gpio/gpio-bcm-kona.c | 1 +
drivers/gpio/gpio-bd73800.c | 4 ++--
drivers/gpio/gpio-blzp1600.c | 4 ++--
drivers/gpio/gpio-brcmstb.c | 2 +-
drivers/gpio/gpio-bt8xx.c | 2 +-
drivers/gpio/gpio-cadence.c | 6 +++---
drivers/gpio/gpio-creg-snps.c | 5 +++--
drivers/gpio/gpio-davinci.c | 8 ++++----
drivers/gpio/gpio-dwapb.c | 14 ++++++-------
drivers/gpio/gpio-em.c | 4 ++--
drivers/gpio/gpio-ep93xx.c | 1 +
drivers/gpio/gpio-ftgpio010.c | 3 ++-
drivers/gpio/gpio-fxl6408.c | 2 +-
drivers/gpio/gpio-graniterapids.c | 4 ++--
drivers/gpio/gpio-grgpio.c | 2 +-
drivers/gpio/gpio-gw-pld.c | 4 ++--
drivers/gpio/gpio-hisi.c | 6 +++---
drivers/gpio/gpio-hlwd.c | 4 ++--
drivers/gpio/gpio-imx-scu.c | 1 +
drivers/gpio/gpio-ixp4xx.c | 4 ++--
drivers/gpio/gpio-ljca.c | 4 ++--
drivers/gpio/gpio-loongson-64bit.c | 4 ++--
drivers/gpio/gpio-lp3943.c | 2 +-
drivers/gpio/gpio-lpc32xx.c | 4 ++--
drivers/gpio/gpio-macsmc.c | 4 ++--
drivers/gpio/gpio-max3191x.c | 12 +++++------
drivers/gpio/gpio-max7301.c | 2 +-
drivers/gpio/gpio-max7360.c | 8 ++++----
drivers/gpio/gpio-max77620.c | 4 ++--
drivers/gpio/gpio-max77759.c | 2 +-
drivers/gpio/gpio-mb86s7x.c | 2 +-
drivers/gpio/gpio-ml-ioh.c | 2 +-
drivers/gpio/gpio-mlxbf.c | 6 +++---
drivers/gpio/gpio-mlxbf2.c | 6 +++---
drivers/gpio/gpio-mlxbf3.c | 4 ++--
drivers/gpio/gpio-mm-lantiq.c | 2 +-
drivers/gpio/gpio-mmio.c | 3 +--
drivers/gpio/gpio-mockup.c | 4 ++--
drivers/gpio/gpio-moxtet.c | 4 ++--
drivers/gpio/gpio-mpc5200.c | 9 ++++----
drivers/gpio/gpio-mpc8xxx.c | 25 +++++++++++-----------
drivers/gpio/gpio-mpfs.c | 1 +
drivers/gpio/gpio-mpsse.c | 3 +--
drivers/gpio/gpio-msc313.c | 1 +
drivers/gpio/gpio-mt7621.c | 2 +-
drivers/gpio/gpio-mvebu.c | 13 ++++++------
drivers/gpio/gpio-mxc.c | 2 +-
drivers/gpio/gpio-mxs.c | 4 ++--
drivers/gpio/gpio-nomadik.c | 7 ++++---
drivers/gpio/gpio-novalake-events.c | 4 ++--
drivers/gpio/gpio-npcm-sgpio.c | 6 +++---
drivers/gpio/gpio-octeon.c | 2 +-
drivers/gpio/gpio-omap.c | 2 +-
drivers/gpio/gpio-palmas.c | 10 ++++-----
drivers/gpio/gpio-pca953x.c | 4 ++--
drivers/gpio/gpio-pca9570.c | 2 +-
drivers/gpio/gpio-pcf857x.c | 26 +++++++++++------------
drivers/gpio/gpio-pci-idio-16.c | 3 ++-
drivers/gpio/gpio-pcie-idio-24.c | 8 +++++---
drivers/gpio/gpio-pisosr.c | 4 ++--
drivers/gpio/gpio-pl061.c | 2 +-
drivers/gpio/gpio-pmic-eic-sprd.c | 2 +-
drivers/gpio/gpio-pxa.c | 20 ++++++++++--------
drivers/gpio/gpio-qixis-fpga.c | 3 +--
drivers/gpio/gpio-rcar.c | 2 +-
drivers/gpio/gpio-rda.c | 2 +-
drivers/gpio/gpio-realtek-otto.c | 2 +-
drivers/gpio/gpio-rockchip.c | 4 ++--
drivers/gpio/gpio-sama5d2-piobu.c | 2 +-
drivers/gpio/gpio-sifive.c | 2 +-
drivers/gpio/gpio-sl28cpld.c | 2 +-
drivers/gpio/gpio-sodaville.c | 3 ++-
drivers/gpio/gpio-spear-spics.c | 3 ++-
drivers/gpio/gpio-sprd.c | 2 +-
drivers/gpio/gpio-stmpe.c | 2 +-
drivers/gpio/gpio-stp-xway.c | 2 +-
drivers/gpio/gpio-tegra.c | 6 +++---
drivers/gpio/gpio-tegra186.c | 32 ++++++++++++++---------------
drivers/gpio/gpio-thunderx.c | 3 +--
drivers/gpio/gpio-tps65218.c | 2 +-
drivers/gpio/gpio-ts4800.c | 4 ++--
drivers/gpio/gpio-ts4900.c | 2 +-
drivers/gpio/gpio-twl4030.c | 4 ++--
drivers/gpio/gpio-usbio.c | 12 +++++------
drivers/gpio/gpio-vf610.c | 4 ++--
drivers/gpio/gpio-virtio.c | 4 ++--
drivers/gpio/gpio-visconti.c | 2 +-
drivers/gpio/gpio-waveshare-dsi.c | 2 +-
drivers/gpio/gpio-xgene-sb.c | 6 +++---
drivers/gpio/gpio-xgene.c | 10 +++++----
drivers/gpio/gpio-xgs-iproc.c | 2 +-
drivers/gpio/gpio-xilinx.c | 4 ++--
drivers/gpio/gpio-xlp.c | 6 +++---
drivers/gpio/gpio-xra1403.c | 6 +++---
drivers/gpio/gpio-zevio.c | 5 +++--
drivers/gpio/gpio-zynqmp-modepin.c | 2 +-
drivers/gpio/gpiolib-acpi-quirks.c | 2 +-
107 files changed, 269 insertions(+), 252 deletions(-)


base-commit: 20a33c6b6cbe7e4805dfb6cd68816937443aa148
--
2.56.0.rc1