[PATCH v2 00/21] gpio: Improvements around device-id arrays
From: Uwe Kleine-König (The Capable Hub)
Date: Wed Jul 15 2026 - 12:56:35 EST
Hello,
as with v1 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 v1 (available at
https://lore.kernel.org/linux-kernel/cover.1784013063.git.u.kleine-koenig@xxxxxxxxxxxx):
- Trivially rebase to today's next/master
- The first two patches are new. My script didn't match on device-id
arrays that are marked with __maybe_unused, so the drivers touched in
these two patches are adapted further down, too.
- Fixed capitalisation of PCI (Andy), did the same for ACPI
- Sort the ACPI device-id arrays by .id in the "unify" patch (only one
instance in gpio-dwapb.c was unsorted), suggested by Andy.
- Found a few other inconsistent device_id arrays that my script didn't
match (due to .driver_data not being a single expression or a comment
in the terminator or more than one array in a single file)
- Fixed cast expressions in drivers/gpio/gpio-mvebu.c to please
checkpatch
- Dropped the dmi MODULE_DEVICE_TABLE patch
- Added review tags from v1
Checkpatch only reports two undocumented device-tree compatibles. I felt
free to ignore these as this is a pre-existing issue and out-of-context
for this series.
Best regards
Uwe
Uwe Kleine-König (The Capable Hub) (21):
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: Add missing ACPI module annotations
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: Use named initializers for spi_device_id array
gpio: virtio: Use a named initializer for virtio_device_id array
gpio: pcf857x: Use named initializers for of_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 arrays
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-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 | 26 +++++++++++++-------------
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 | 13 +++++++------
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 +-
106 files changed, 265 insertions(+), 247 deletions(-)
base-commit: b8809969e1d7a591e0f49dd464a5d04b3cf02ab1
--
2.55.0.11.g153666a7d9bb