[GIT PULL] gpio updates for v7.3-rc1

Bartosz Golaszewski <[email protected]>
Newsgroups org.kernel.vger.linux-gpio,org.kernel.vger.linux-kernel
Message-ID <[email protected]>
Linus,

I'm sending my pull-request earlier as I'll be mostly OoO until September.

There's one new driver for the Realtek DHC RTD1625 GPIO controller. If adding
it, reverting it and then adding it again raises your eyebrow: this was done
becuase the initial implementation - while correct - didn't use the gpio-regmap
abstraction that suited it nicely. The conversion was done after I had already
merged v7.2-rc2 into my tree so instead of rebasing, I went with a revert.

The merges you see - other than pulling in your upstream tags with conflicting
fixes - are for a PR from Arnd containing his work on further isolating legacy
GPIO APIs and the fw_devlink support for software nodes that will go upstream
via the driver core tree.

Nothing else really stands out, details are in the signed tag. Please consider
pulling.

Thanks,
Bartosz

The following changes since commit 8cdeaa50eae8dad34885515f62559ee83e7e8dda:

  Linux 7.2-rc2 (2026-07-05 14:44:06 -1000)

are available in the Git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/brgl/linux.git gpio-updates-for-v7.3-rc1

for you to fetch changes up to 408866669ce01b8f2111afdea2c13d15a8960bff:

  gpio: gpio-by-pinctrl: Apply initial value in direction output wrapper (2026-08-11 16:08:01 +0200)

----------------------------------------------------------------
gpio updates for v7.3-rc1

GPIO core:
- extend the gpio-regmap abstraction layer with more features allowing users
  to override configuration setting, translate register values and masks and
  enable/disable interrupts
- extend GPIO kunit tests with suites verifying probe ordering by software
  node devlink support and software node hogs
- shrink GPIO kunit initialization code
- coding style updates (remove commas from sentinels where applicable)
- with all users now converted treewide to using real firmware node links for
  software node GPIO lookup: remove the deprecated label-matching mechanism
  from from GPIO core
- drop redundant return value check of nonseekable_open() in gpiolib-cdev
- use IRQ trigger helpers where applicable

Driver updates:
- refactor error paths and logging in gpio-nomadik
- use more modern interfaces for getting resources in gpio-rockchip,
  gpio-bt8xx and gpio-pca9570
- add missing MODULE_DEVICE_TABLE() to gpio-sifive and gpio-vf610
- drop unused FILONOFF macro from gpio-rcar
- extend build coverage of ioport GPIO drivers with COMPILE_TEST=y
- only enable the gpio-rtd driver by default with ARCH_REALTEK=y to avoid
  bloating the build
- refactor coding style in several drivers
- use correct endianess translation in gpio-pcf85x
- add wake-up interrupt support to gpio-mvebu
- apply initial value in direction output setter in gpio-by-pinctrl

Misc:
- replace linux/gpio.h inclusions treewide with linux/gpio/legacy.h which now
  exports all the deprecated APIs
- select GPIOLIB_LEGACY in Kconfig where required treewide
- use software nodes for gpio-keys in MFD drivers

Devicetree bindings:
- describe the realtek rtd1625 GPIO controller
- document new models for gpio-pca95xx and gpio-cadence
- document new property in gpio-rockchip

----------------------------------------------------------------
Alex Tran (1):
      gpio: gpio-by-pinctrl: Apply initial value in direction output wrapper

Andy Shevchenko (4):
      gpio: pcf857x: Use le16_to_cpu() and cpu_to_le16() in IO accessors
      gpio: regmap: Provide default IRQ resource request and release callbacks
      gpio: regmap: Apply default resource callbacks for regmap IRQ chip
      gpio: regmap: Order kernel-doc descriptions with the actual appearance

Arnd Bergmann (12):
      Input: soc_button_array - select CONFIG_GPIOLIB_LEGACY
      Input: gpio-keys: make legacy gpiolib optional
      sh: select legacy gpiolib interface
      x86/olpc: select GPIOLIB_LEGACY
      mips: replace linux/gpio.h inclusions
      sh: replace linux/gpio.h inclusions
      mfd: replace linux/gpio.h inclusions
      ASoC: replace linux/gpio.h inclusions
      pcmcia: replace linux/gpio.h inclusions
      phy: replace linux/gpio.h inclusions
      Input: matrix_keyboard - replace linux/gpio.h inclusion
      gpib: gpio: replace linux/gpio.h inclusion

Bartosz Golaszewski (12):
      Merge tag 'v7.2-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux into gpio/for-next
      gpio: kunit: shrink initialization code
      gpio: kunit: add test cases for software node hogs
      Merge tag 'v7.2-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux into gpio/for-next
      gpio: swnode: remove deprecated lookup mechanism
      kunit: provide a set of fwnode-oriented helpers
      software node: add fw_devlink support
      software node: add kunit tests for fw_devlink support
      MAINTAINERS: add myself as reviewer of software node support
      Merge tag 'swnode-7.3-rc1' of https://git.kernel.org/pub/scm/linux/kernel/git/driver-core/driver-core into gpio/for-next
      gpio: kunit: add test cases verifying swnode devlink support
      Merge tag 'config-gpio-legacy-for-7.3' of https://git.kernel.org/pub/scm/linux/kernel/git/arnd/playground into gpio/for-next

Colin Ian King (1):
      gpio: bd72720: make read-only const arrays regs static

Dmitry Torokhov (4):
      gpio: amd-fch: switch to guard() notation
      gpiolib: remove trailing comma from sentinel in GPIO_LOOKUP_SINGLE
      mfd: rohm-bd71828: Use software nodes for gpio-keys
      mfd: rohm-bd718x7: Use software nodes for gpio-keys

Igor Putko (2):
      gpio: tb10x: use unsigned int instead of bare unsigned
      gpio: tb10x: remove unnecessary braces

Marco Scardovi (2):
      gpio: rockchip: use devm_platform_ioremap_resource() to map registers
      gpio: rockchip: use platform_get_irq() to retrieve interrupt

Marek Vasut (2):
      gpio: rcar: Drop unused FILONOFF macro
      dt-bindings: gpio: pca95xx: Document Kinetic KTS1622

Maulik Shah (1):
      gpio: Use IRQ trigger mask helpers

Pengpeng Hou (3):
      gpio: pca9570: Use I2C match data
      gpio: sifive: add missing MODULE_DEVICE_TABLE()
      gpio: vf610: add missing MODULE_DEVICE_TABLE()

Rosen Penev (3):
      gpio: mvebu: add wake-up interrupt support
      gpio: bt8xx: use devm_ioremap_resource()
      gpio: allow COMPILE_TEST for IOPORT drivers

Sergio Paracuellos (1):
      gpio: mt7621: unify naming style in driver code

Simon Glass (1):
      dt-bindings: gpio: rockchip,gpio-bank: Add rockchip,grf property

Swark Yang (1):
      dt-bindings: gpio: cdns: add Axiado AX3005 GPIO variant

Théo Lebrun (5):
      gpio: nomadik: convert nmk_gpio_populate_chip() to goto cleanup
      gpio: nomadik: add missing dev_err() call on chip populate failure
      gpio: nomadik: drop duplicate probe error line
      gpio: nomadik: use dev_err_probe()
      gpio: nomadik: drop "chip registered" log on probe success

Tzuyi Chang (3):
      dt-bindings: gpio: realtek: Add realtek,rtd1625-gpio
      gpio: realtek: Add driver for Realtek DHC RTD1625 SoC
      gpio: realtek: Add driver for Realtek DHC RTD1625 SoC

Wolfram Sang (1):
      gpio: sloppy-logic-analyzer: add a comment explaining the buffer init

Yu-Chun Lin (6):
      gpio: Replace "default y" with "default ARCH_REALTEK" in Kconfig
      Revert "gpio: realtek: Add driver for Realtek DHC RTD1625 SoC"
      gpio: regmap: Add gpio_regmap_operation to extend reg_mask_xlate callback
      gpio: regmap: Add value_xlate callback
      gpio: regmap: Add set_config callback
      gpio: regmap: Add IRQ enable/disable helpers

bui duc phuc (1):
      gpio: cdev: Drop redundant nonseekable_open() return check

 .../devicetree/bindings/gpio/cdns,gpio.yaml        |   7 +-
 .../devicetree/bindings/gpio/gpio-pca95xx.yaml     |   3 +
 .../bindings/gpio/realtek,rtd1625-gpio.yaml        |  71 +++
 .../bindings/gpio/rockchip,gpio-bank.yaml          |   7 +
 MAINTAINERS                                        |   2 +
 arch/mips/alchemy/board-xxs1500.c                  |   2 +-
 arch/mips/alchemy/devboards/db1000.c               |   2 +-
 arch/mips/alchemy/devboards/db1200.c               |   2 +-
 arch/mips/alchemy/devboards/db1550.c               |   2 +-
 arch/mips/bcm47xx/workarounds.c                    |   2 +-
 arch/mips/bcm63xx/boards/board_bcm963xx.c          |   1 +
 .../mips/include/asm/mach-bcm63xx/board_bcm963xx.h |   2 +-
 arch/sh/Kconfig                                    |   1 +
 arch/sh/boards/Kconfig                             |   8 +
 arch/sh/boards/board-magicpanelr2.c                |   2 +-
 arch/sh/boards/board-sh7757lcr.c                   |   2 +-
 arch/sh/boards/board-urquell.c                     |   2 +-
 arch/sh/boards/mach-ap325rxa/setup.c               |   2 +-
 arch/sh/boards/mach-ecovec24/setup.c               |   2 +-
 arch/sh/boards/mach-highlander/Kconfig             |   1 +
 arch/sh/boards/mach-highlander/pinmux-r7785rp.c    |   2 +-
 arch/sh/boards/mach-kfr2r09/lcd_wqvga.c            |   2 +-
 arch/sh/boards/mach-kfr2r09/setup.c                |   2 +-
 arch/sh/boards/mach-migor/lcd_qvga.c               |   2 +-
 arch/sh/boards/mach-migor/setup.c                  |   2 +-
 arch/sh/boards/mach-rsk/Kconfig                    |   3 +
 arch/sh/boards/mach-rsk/devices-rsk7269.c          |   1 -
 arch/sh/boards/mach-se/7724/setup.c                |   2 +-
 arch/sh/include/mach-common/mach/magicpanelr2.h    |   2 -
 arch/sh/kernel/cpu/sh4a/setup-shx3.c               |   2 +-
 arch/x86/Kconfig                                   |   1 +
 arch/x86/platform/olpc/olpc-xo1-sci.c              |   2 +-
 drivers/base/swnode.c                              |  79 +++
 drivers/base/test/Kconfig                          |   5 +
 drivers/base/test/Makefile                         |   2 +
 drivers/base/test/swnode-devlink-test.c            | 337 ++++++++++
 drivers/gpib/gpio/gpib_bitbang.c                   |   1 -
 drivers/gpio/Kconfig                               |  19 +-
 drivers/gpio/Makefile                              |   1 +
 drivers/gpio/gpio-104-idi-48.c                     |   7 +-
 drivers/gpio/gpio-amd-fch.c                        |  22 +-
 drivers/gpio/gpio-bd72720.c                        |  24 +-
 drivers/gpio/gpio-bt8xx.c                          |  21 +-
 drivers/gpio/gpio-by-pinctrl.c                     |  18 +-
 drivers/gpio/gpio-davinci.c                        |   8 +-
 drivers/gpio/gpio-i8255.c                          |   4 +-
 drivers/gpio/gpio-idio-16.c                        |   6 +-
 drivers/gpio/gpio-max7360.c                        |   8 +-
 drivers/gpio/gpio-mt7621.c                         |  42 +-
 drivers/gpio/gpio-mvebu.c                          |  44 +-
 drivers/gpio/gpio-mxs.c                            |   4 +-
 drivers/gpio/gpio-nomadik.c                        |  64 +-
 drivers/gpio/gpio-omap.c                           |   9 +-
 drivers/gpio/gpio-pca9570.c                        |   2 +-
 drivers/gpio/gpio-pcf857x.c                        |  13 +-
 drivers/gpio/gpio-pcie-idio-24.c                   |   6 +-
 drivers/gpio/gpio-pl061.c                          |   5 +-
 drivers/gpio/gpio-pxa.c                            |   2 +-
 drivers/gpio/gpio-rcar.c                           |   1 -
 drivers/gpio/gpio-rda.c                            |   4 +-
 drivers/gpio/gpio-regmap.c                         | 104 +++-
 drivers/gpio/gpio-rockchip.c                       |  16 +-
 drivers/gpio/gpio-rtd1625.c                        | 677 +++++++++++++++++++++
 drivers/gpio/gpio-sa1100.c                         |   2 +-
 drivers/gpio/gpio-sifive.c                         |   1 +
 drivers/gpio/gpio-sloppy-logic-analyzer.c          |   1 +
 drivers/gpio/gpio-sodaville.c                      |   2 +-
 drivers/gpio/gpio-stmpe.c                          |   2 +-
 drivers/gpio/gpio-tb10x.c                          |   5 +-
 drivers/gpio/gpio-tegra.c                          |   4 +-
 drivers/gpio/gpio-timberdale.c                     |   2 +-
 drivers/gpio/gpio-vf610.c                          |   1 +
 drivers/gpio/gpiolib-cdev.c                        |   9 +-
 drivers/gpio/gpiolib-kunit.c                       | 571 ++++++++++++++++-
 drivers/gpio/gpiolib-swnode.c                      |  23 +-
 drivers/iio/adc/ad7173.c                           |   8 +-
 drivers/iio/addac/stx104.c                         |   6 +-
 drivers/input/keyboard/gpio_keys.c                 |   7 +-
 drivers/input/keyboard/gpio_keys_polled.c          |   4 +-
 drivers/input/keyboard/matrix_keypad.c             |   1 -
 drivers/input/misc/Kconfig                         |   3 +
 drivers/input/misc/soc_button_array.c              |   1 -
 drivers/mfd/aat2870-core.c                         |   2 +-
 drivers/mfd/arizona-irq.c                          |   2 +-
 drivers/mfd/lp3943.c                               |   2 +-
 drivers/mfd/rohm-bd71828.c                         | 125 +++-
 drivers/mfd/rohm-bd718x7.c                         | 123 +++-
 drivers/mfd/sm501.c                                |   2 +-
 drivers/mfd/tps6105x.c                             |   2 +-
 drivers/mfd/tps65911-comparator.c                  |   2 +-
 drivers/mfd/wm8994-irq.c                           |   2 +-
 drivers/pcmcia/bcm63xx_pcmcia.c                    |   2 +-
 drivers/pcmcia/db1xxx_ss.c                         |   2 +-
 drivers/pcmcia/sa1100_h3600.c                      |   2 +-
 drivers/pcmcia/soc_common.c                        |   2 +-
 drivers/pcmcia/xxs1500_ss.c                        |   2 +-
 drivers/phy/broadcom/phy-bcm-ns2-usbdrd.c          |   1 -
 drivers/phy/rockchip/phy-rockchip-usbdp.c          |   2 +-
 drivers/phy/ti/phy-j721e-wiz.c                     |   1 -
 drivers/pinctrl/bcm/pinctrl-bcm63xx.c              |   1 +
 drivers/pinctrl/pinctrl-tps6594.c                  |   1 +
 include/kunit/fwnode.h                             |  29 +
 include/linux/gpio/machine.h                       |   2 +-
 include/linux/gpio/regmap.h                        |  73 ++-
 include/linux/gpio_keys.h                          |   2 +
 include/linux/mfd/lp3943.h                         |   2 +-
 include/linux/mfd/ti-lmu.h                         |   1 -
 include/linux/mfd/tps65910.h                       |   2 +-
 include/linux/mfd/ucb1x00.h                        |   2 +-
 lib/kunit/Makefile                                 |   1 +
 lib/kunit/fwnode.c                                 | 146 +++++
 sound/pci/Kconfig                                  |   1 +
 sound/pci/cs5535audio/cs5535audio_olpc.c           |   2 +-
 sound/soc/codecs/cs42l84.c                         |   1 -
 sound/soc/codecs/cx2072x.c                         |   2 +-
 sound/soc/codecs/dmic.c                            |   1 -
 116 files changed, 2532 insertions(+), 367 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/gpio/realtek,rtd1625-gpio.yaml
 create mode 100644 drivers/base/test/swnode-devlink-test.c
 create mode 100644 drivers/gpio/gpio-rtd1625.c
 create mode 100644 include/kunit/fwnode.h
 create mode 100644 lib/kunit/fwnode.c
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.