Linus, Here are the updates for this merge window from the GPIO subsystem. We have more lines removed than added thanks to dropping of a driver for a platform that's no longer supported. Otherwise the changes are pretty straightforward. We have support for some new models, various improvements to existing drivers, some tweaks to the core library code and DT bindings updates. Details are in the signed tag. Please pull! Bartosz Golaszewski The following changes since commit ff6992735ade75aae3e35d16b17da1008d753d28: Linux 5.19-rc7 (2022-07-17 13:30:22 -0700) are available in the Git repository at: git://git.kernel.org/pub/scm/linux/kernel/git/brgl/linux.git tags/gpio-updates-for-v6.0-rc1 for you to fetch changes up to c4f0d16daa6d1c5d862d063379c03310387095d5: dt-bindings: gpio: fsl-imx-gpio: Add i.MXRT compatibles (2022-07-28 15:49:49 +0200) ---------------------------------------------------------------- gpio: updates for v6.0-rc1 - remove gpio-vr41xx driver as the only platform using it got dropped too - add support for suspend/resume to gpio-davinci - improvements to the GPIO character device code - add support for disabling bias for in-kernel users (up until now only user-space could set it) - drop unused devm_gpio_free() - fix a refcount issue in gpiolib OF - use device match helpers where applicable - add support for a new model to gpio-rockchip - non-functional improvements in gpio-adp5588 - improve and simplify teardown in gpio-twl4030 and gpio-ucb1400 - modernize the gpio-74xx-mmio and gpio-adnp drivers - coding style improvements in gpio-xilinx, gpio-104-idi-48 - support new model (pca9571) in gpio-pca9570 - convert the DT bindings to YAML for gpio-mvebu and update the document - don't return error codes from remove() in gpio-brcmstb - add a library for the intel 8255 PPI interface and use it in drivers - reduce using magic numbers and improve code readability in several drivers - convert DT bindings to YAML for gpio-tpic2810 - add new models to DT bindings for gpio-frl-imx - Kconfig improvements - other minor tweaks and improvements ---------------------------------------------------------------- Aakash Sen Sharma (1): gpio: 104-idi-48: unsigned to unsigned int cleanup Andy Shevchenko (13): gpio: pch: Use dev_err_probe() gpio: pch: Change PCI device macros gpiolib: devres: Get rid of unused devm_gpio_free() gpio: adnp: use simple i2c probe function gpio: adnp: Make use of device properties gpio: adp5588: Switch from of headers to mod_devicetable.h gpio: adp5588: Do not use defined value for driver name and compatible gpio: adp5588: sort header inclusion alphabetically gpiolib: of: Use device_match_of_node() helper gpio: 74xx-mmio: Make use of device properties gpio: 74xx-mmio: Check MMIO_74XX_DIR_IN flag in mmio_74xx_dir_in() gpio: 74xx-mmio: use bits.h macros for all masks gpio: 74xx-mmio: Use bits instead of plain numbers for flags Aparna M (1): dt-bindings: gpio: Convert TI TPIC2810 GPIO Controller bindings to YAML Bartosz Golaszewski (1): Merge tag 'intel-gpio-v5.20-1' of git://git.kernel.org/pub/scm/linux/kernel/git/andy/linux-gpio-intel into TEST_MERGE Chris Packham (3): dt-bindings: gpio: gpio-mvebu: convert txt binding to DT schema format dt-bindings: gpio: gpio-mvebu: deprecate armadaxp-gpio dt-bindings: gpio: gpio-mvebu: document offset and marvell,pwm-offset Devarsh Thakkar (1): gpio: davinci: Add support for system suspend/resume PM Geert Uytterhoeven (2): dt-bindings: gpio: renesas,rcar-gpio: R-Car V3U is R-Car Gen4 gpio: GPIO_SAMA5D2_PIOBU should depend on ARCH_AT91 Jesse Taube (1): dt-bindings: gpio: fsl-imx-gpio: Add i.MXRT compatibles Jianqun Xu (1): gpio: rockchip: add support for rk3588 Kent Gibson (6): gpiolib: cdev: simplify linereq_free gpiolib: cdev: simplify parameter in call to hte_edge_setup gpiolib: cdev: replace if-else chains with switches gpiolib: cdev: simplify line event identification gpiolib: cdev: consolidate edge detector configuration flags gpiolib: cdev: compile out HTE unless CONFIG_HTE selected Liang He (1): gpio: gpiolib-of: Fix refcount bugs in of_mm_gpiochip_add_data() Lucas Stach (2): gpio: pca9570: Add DT bindings for NXP PCA9571 gpio: pca9570: add pca9571 support Nuno Sá (4): gpiolib: add support for bias pull disable gpiolib: of: support bias pull disable gpiolib: acpi: support bias pull disable dt-bindings: gpio: add pull-disable flag Sebastian Reichel (1): dt-bindings: gpio: rockchip: add gpio-ranges Shinyzenith (1): gpio: lp3943: unsigned to unsigned int cleanup Shubhrajyoti Datta (1): gpio: xilinx: add missing blank line after declarations Thomas Bogendoerfer (1): gpio: remove VR41XX related gpio driver Uwe Kleine-König (5): gpio: twl4030: Drop platform teardown callback gpio: twl4030: Don't return an error after WARN in .remove gpio: ucb1400: Remove platform setup and teardown support gpio: brcmstb: Make .remove() obviously always return 0 gpio: xgs-iproc: Drop if with an always false condition William Breathitt Gray (7): gpio: ws16c48: Implement and utilize register structures gpio: 104-idio-16: Implement and utilize register structures gpio: i8255: Introduce the Intel 8255 interface library module gpio: 104-dio-48e: Implement and utilize register structures gpio: 104-idi-48: Implement and utilize register structures gpio: gpio-mm: Implement and utilize register structures MAINTAINERS: Update Intel 8255 GPIO driver file list .../arm/marvell/ap80x-system-controller.txt | 2 +- .../arm/marvell/cp110-system-controller.txt | 2 +- .../devicetree/bindings/gpio/fsl-imx-gpio.yaml | 2 + .../devicetree/bindings/gpio/gpio-mvebu.txt | 93 ---- .../devicetree/bindings/gpio/gpio-mvebu.yaml | 146 ++++++ .../devicetree/bindings/gpio/gpio-pca9570.yaml | 1 + .../devicetree/bindings/gpio/gpio-tpic2810.txt | 16 - .../devicetree/bindings/gpio/gpio-tpic2810.yaml | 51 ++ .../bindings/gpio/renesas,rcar-gpio.yaml | 4 +- .../bindings/gpio/rockchip,gpio-bank.yaml | 2 + Documentation/driver-api/driver-model/devres.rst | 1 - MAINTAINERS | 9 +- drivers/gpio/Kconfig | 22 +- drivers/gpio/Makefile | 2 +- drivers/gpio/gpio-104-dio-48e.c | 249 +++------- drivers/gpio/gpio-104-idi-48.c | 157 +++--- drivers/gpio/gpio-104-idio-16.c | 60 ++- drivers/gpio/gpio-74xx-mmio.c | 19 +- drivers/gpio/gpio-adnp.c | 19 +- drivers/gpio/gpio-adp5588.c | 26 +- drivers/gpio/gpio-brcmstb.c | 9 +- drivers/gpio/gpio-davinci.c | 83 ++++ drivers/gpio/gpio-gpio-mm.c | 202 ++------ drivers/gpio/gpio-i8255.c | 287 +++++++++++ drivers/gpio/gpio-i8255.h | 46 ++ drivers/gpio/gpio-lp3943.c | 16 +- drivers/gpio/gpio-pca9570.c | 2 + drivers/gpio/gpio-pch.c | 43 +- drivers/gpio/gpio-rockchip.c | 3 +- drivers/gpio/gpio-twl4030.c | 18 +- drivers/gpio/gpio-ucb1400.c | 20 - drivers/gpio/gpio-vr41xx.c | 541 --------------------- drivers/gpio/gpio-ws16c48.c | 120 +++-- drivers/gpio/gpio-xgs-iproc.c | 6 +- drivers/gpio/gpio-xilinx.c | 2 + drivers/gpio/gpiolib-acpi.c | 3 + drivers/gpio/gpiolib-cdev.c | 291 +++++------ drivers/gpio/gpiolib-devres.c | 32 -- drivers/gpio/gpiolib-of.c | 13 +- drivers/gpio/gpiolib.c | 8 +- drivers/mfd/ucb1400_core.c | 6 +- include/dt-bindings/gpio/gpio.h | 3 + include/linux/gpio.h | 6 - include/linux/gpio/machine.h | 1 + include/linux/mfd/twl.h | 2 - include/linux/of_gpio.h | 1 + include/linux/ucb1400.h | 2 - 47 files changed, 1197 insertions(+), 1452 deletions(-) delete mode 100644 Documentation/devicetree/bindings/gpio/gpio-mvebu.txt create mode 100644 Documentation/devicetree/bindings/gpio/gpio-mvebu.yaml delete mode 100644 Documentation/devicetree/bindings/gpio/gpio-tpic2810.txt create mode 100644 Documentation/devicetree/bindings/gpio/gpio-tpic2810.yaml create mode 100644 drivers/gpio/gpio-i8255.c create mode 100644 drivers/gpio/gpio-i8255.h delete mode 100644 drivers/gpio/gpio-vr41xx.c