[GIT PULL] gpio: updates for v6.1-rc1

From: Bartosz Golaszewski
Date: Fri Oct 07 2022 - 15:59:22 EST


Linus,

Here's the main pull-request from the GPIO subsystem for this merge window.
We have a single new driver, support for a bunch of new models, improvements
in drivers and core gpiolib code as well device-tree bindings changes.

Details are in the signed tag.

Please pull.
Bartosz Golaszewski

The following changes since commit 568035b01cfb107af8d2e4bd2fb9aea22cf5b868:

Linux 6.0-rc1 (2022-08-14 15:50:18 -0700)

are available in the Git repository at:

git://git.kernel.org/pub/scm/linux/kernel/git/brgl/linux.git gpio-updates-for-v6.1-rc1

for you to fetch changes up to 3c92506d86785967fd7e7933e04491b9276c2f00:

gpio: tc3589x: Make irqchip immutable (2022-10-03 20:56:46 +0200)

----------------------------------------------------------------
gpio updates for v6.1-rc1

New drivers:
- add a new driver for the IMX System Controller Unit GPIOs

GPIO core:
- add fdinfo output for the GPIO character device file descriptors (allows
user-space to determine which processes own which GPIO lines)
- improvements to OF GPIO code
- new quirk for Asus UM325UAZ in gpiolib-acpi
- new quirk for Freescale SPI in gpiolib-of

Driver improvements:
- add a new macro that reduces the amount of boilerplate code in ISA drivers
and use it in relevant drivers
- support two new models in gpio-pca953x
- support new model in gpio-f7188x
- convert more drivers to use immutable irq chips
- other minor tweaks

Device-tree bindings:
- add DT bindings for gpio-imx-scu
- convert Xilinx GPIO bindings to YAML
- reference the properties from the SPI peripheral device-tree bindings
instead of providing custom ones in the GPIO controller document
- add parsing of GPIO hog nodes to the DT bindings for gpio-mpfs-gpio
- relax the node name requirements in gpio-stmpe
- add new models for gpio-rcar and gpio-pxa95xx
- add a new vendor prefix: Diodes (for Diodes, Inc.)

Misc:
- pulled in the immutable branch from the x86 platform drivers tree including
support for a new simatic board that depends on GPIO changes

----------------------------------------------------------------
Bartosz Golaszewski (3):
Merge tag 'platform-drivers-x86-simatec-1' of git://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86 into gpio/for-next
Merge tag 'intel-gpio-v6.1-1' of gitolite.kernel.org:pub/scm/linux/kernel/git/andy/linux-gpio-intel into gpio/for-next
gpiolib: cdev: add fdinfo output for line request file descriptors

Conor Dooley (1):
dt-bindings: gpio: mpfs-gpio: allow parsing of hog child nodes.

Dmitry Torokhov (5):
gpiolib: make fwnode_get_named_gpiod() static
gpiolib: of: do not ignore requested index when applying quirks
gpiolib: of: make Freescale SPI quirk similar to all others
gpiolib: rework quirk handling in of_find_gpio()
gpiolib: of: factor out conversion from OF flags

Francesco Dolcini (1):
dt-bindings: gpio: stmpe: Remove node name requirement

Geert Uytterhoeven (1):
dt-bindings: gpio: renesas,rcar-gpio: Add r8a779g0 support

Henning Schild (7):
gpio-f7188x: switch over to using pr_fmt
gpio-f7188x: add a prefix to macros to keep gpio namespace clean
gpio-f7188x: Add GPIO support for Nuvoton NCT6116
gpio-f7188x: use unique labels for banks/chips
leds: simatic-ipc-leds-gpio: add new model 227G
platform/x86: simatic-ipc: enable watchdog for 227G
platform/x86: simatic-ipc: add new model 427G

Jeffy Chen (1):
gpio/rockchip: Convert to generic_handle_domain_irq()

Krzysztof Kozlowski (1):
dt-bindings: gpio: fairchild,74hc595: use spi-peripheral-props.yaml

Linus Walleij (2):
gpio: ucb1400: Use proper header
gpio: tc3589x: Make irqchip immutable

Mario Limonciello (2):
gpiolib: acpi: Add support to ignore programming an interrupt
gpiolib: acpi: Add a quirk for Asus UM325UAZ

Martyn Welch (5):
dt-bindings: vendor-prefixes: add Diodes
dt-bindings: gpio: pca95xx: add entry for pcal6534 and PI4IOE5V6534Q
gpio: pca953x: Fix pca953x_gpio_set_pull_up_down()
gpio: pca953x: Swap if statements to save later complexity
gpio: pca953x: Add support for PCAL6534

Michael Walle (1):
gpiolib: fix OOB access in quirk callbacks

Nate Drude (2):
dt-bindings: gpio: pca95xx: add entry for pcal6408
gpio: pca953x: introduce support for nxp,pcal6408

Qingtao Cao (1):
gpio: exar: access MPIO registers on cascaded chips

Sergio Paracuellos (1):
gpio: mt7621: Switch to use platform_get_irq() function

Shenwei Wang (3):
dt-bindings: gpio: Add imx scu gpio driver bindings
dt-bindings: firmware: imx: Add imx-scu gpio node
gpio: imx-scu: add imx-scu GPIO driver

Srinivas Neeli (1):
dt-bindings: gpio: gpio-xilinx: Convert Xilinx axi gpio binding to YAML

Uwe Kleine-König (1):
gpio: twl4030: Reorder functions which allows to drop a forward declaraion

William Breathitt Gray (6):
isa: Introduce the module_isa_driver_with_irq helper macro
counter: 104-quad-8: Ensure number of irq matches number of base
gpio: 104-dio-48e: Ensure number of irq matches number of base
gpio: 104-idi-48: Ensure number of irq matches number of base
gpio: 104-idio-16: Ensure number of irq matches number of base
gpio: ws16c48: Ensure number of irq matches number of base

.../devicetree/bindings/firmware/fsl,scu.yaml | 5 +
.../bindings/gpio/fairchild,74hc595.yaml | 7 +-
.../bindings/gpio/fsl,imx8qxp-sc-gpio.yaml | 39 +++
.../devicetree/bindings/gpio/gpio-pca95xx.yaml | 99 ++++----
.../devicetree/bindings/gpio/gpio-stmpe.txt | 3 +-
.../devicetree/bindings/gpio/gpio-xilinx.txt | 48 ----
.../bindings/gpio/microchip,mpfs-gpio.yaml | 18 ++
.../bindings/gpio/renesas,rcar-gpio.yaml | 1 +
.../devicetree/bindings/gpio/xlnx,gpio-xilinx.yaml | 154 ++++++++++++
.../devicetree/bindings/vendor-prefixes.yaml | 2 +
drivers/counter/104-quad-8.c | 5 +-
drivers/gpio/Kconfig | 7 +-
drivers/gpio/Makefile | 1 +
drivers/gpio/gpio-104-dio-48e.c | 5 +-
drivers/gpio/gpio-104-idi-48.c | 5 +-
drivers/gpio/gpio-104-idio-16.c | 5 +-
drivers/gpio/gpio-exar.c | 40 ++-
drivers/gpio/gpio-f7188x.c | 275 ++++++++++++---------
drivers/gpio/gpio-imx-scu.c | 139 +++++++++++
drivers/gpio/gpio-mt7621.c | 7 +-
drivers/gpio/gpio-pca953x.c | 177 ++++++++++---
drivers/gpio/gpio-rockchip.c | 21 +-
drivers/gpio/gpio-tc3589x.c | 8 +-
drivers/gpio/gpio-twl4030.c | 26 +-
drivers/gpio/gpio-ucb1400.c | 1 +
drivers/gpio/gpio-ws16c48.c | 5 +-
drivers/gpio/gpiolib-acpi.c | 38 ++-
drivers/gpio/gpiolib-cdev.c | 18 ++
drivers/gpio/gpiolib-of.c | 184 ++++++--------
drivers/gpio/gpiolib.c | 132 +++++-----
drivers/leds/simple/simatic-ipc-leds-gpio.c | 42 +++-
drivers/platform/x86/simatic-ipc.c | 10 +-
include/linux/gpio/consumer.h | 13 -
include/linux/isa.h | 52 +++-
include/linux/platform_data/x86/simatic-ipc-base.h | 1 +
include/linux/platform_data/x86/simatic-ipc.h | 2 +
include/linux/ucb1400.h | 2 +-
37 files changed, 1089 insertions(+), 508 deletions(-)
create mode 100644 Documentation/devicetree/bindings/gpio/fsl,imx8qxp-sc-gpio.yaml
delete mode 100644 Documentation/devicetree/bindings/gpio/gpio-xilinx.txt
create mode 100644 Documentation/devicetree/bindings/gpio/xlnx,gpio-xilinx.yaml
create mode 100644 drivers/gpio/gpio-imx-scu.c