Hi all, Here is the v2 patchset for the Apple pinctrl/GPIO driver. I'll be away for a week, and won't be able to reply to e-mails, but I wanted to send this out now to keep progressing and maybe people can test with the updates. Changes since v1 [1]: - Removed USE_*_GENERIC_FN defines - Use apple,npins instead of gpio-ranges + dt-binding commit - Use _relaxed accesors - Use per-irq context data + gpiolib core commit - Moved some fields from apple_gpio_pinctrl to be local variables in apple_gpio_pinctrl_probe - Simplify the register shadowing, by simply mirroring the entire value of the register. - Ran checkpatch.pl / clang-format to fix style issues. There is a branch here with the driver: https://gitlab.arm.com/linux-arm/jg-open/-/commits/pinctrl_apple_v2 Thanks, Joey note: For those that have been testing this with PCIe etc, you will probably want to also include the last commit in the following branch, as I dropped the clock references in the code (due to the switch to power domains): https://gitlab.arm.com/linux-arm/jg-open/-/commits/pinctrl_apple_v2_clock [1] https://lore.kernel.org/linux-gpio/20210921222956.40719-1-joey.gouly@xxxxxxx/ -------------- Joey Gouly (1): dt-bindings: pinctrl: Add apple,npins property to apple,pinctrl Marc Zyngier (1): gpio: Allow per-parent interrupt data Stan Skowronek (1): pinctrl: add pinctrl/GPIO driver for Apple SoCs .../bindings/pinctrl/apple,pinctrl.yaml | 4 + MAINTAINERS | 1 + drivers/gpio/gpiolib.c | 9 +- drivers/pinctrl/Kconfig | 16 + drivers/pinctrl/Makefile | 1 + drivers/pinctrl/pinctrl-apple-gpio.c | 561 ++++++++++++++++++ include/linux/gpio/driver.h | 19 +- 7 files changed, 607 insertions(+), 4 deletions(-) create mode 100644 drivers/pinctrl/pinctrl-apple-gpio.c -- 2.17.1