Hi Linus, this is the big bulk of pin control changes for v4.12. The extra week before the merge window actually resulted in some of the type of fixes that usually arrive after the merge window already starting to trickle in from eager developers using -next, I'm impressed. I have recruited a Samsung subsubsystem maintainer (Krzysztof) to deal with the onset of Samsung patches. It works great. Apart from that it is a boring round, just incremental updates and fixes all over the place, no serious core changes or anything exciting like that. The most pleasing to see is Julia Cartwrights work to audit the irqchip-providing drivers for realtime locking compliance. It's one of those "I should really get around to looking into that" things that have been on my TODO list since forever. More details in the signed tag. Please pull it in! Yours, Linus Walleij The following changes since commit c1ae3cfa0e89fa1a7ecc4c99031f5e9ae99d9201: Linux 4.11-rc1 (2017-03-05 12:59:56 -0800) are available in the git repository at: git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl.git tags/pinctrl-v4.12-1 for you to fetch changes up to 1aa2faf52f76d49669f6613b9521618ab2bc63b2: pinctrl: mediatek: Add missing pinctrl bindings for mt7623 (2017-04-28 09:54:41 +0200) ---------------------------------------------------------------- This is the bulk of pin control changes for the v4.12 cycle: Core changes: - Add bi-directional and output-enable pin configurations to the generic bindings and generic pin controlling core. New drivers or subdrivers: - Armada 37xx SoC pin controller and GPIO support. - Axis ARTPEC-6 SoC pin controller support. - AllWinner A64 R_PIO controller support, and opening up the AllWinner sunxi driver for ARM64 use. - Rockchip RK3328 support. - Renesas R-Car H3 ES2.0 support. - STM32F469 support in the STM32 driver. - Aspeed G4 and G5 pin controller support. Improvements: - A whole slew of realtime improvements to drivers implementing irqchips: BCM, AMD, SiRF, sunxi, rockchip. - Switch meson driver to get the GPIO ranges from the device tree. - Input schmitt trigger support on the Rockchip driver. - Enable the sunxi (AllWinner) driver to also be used on ARM64 silicon. - Name the Qualcomm QDF2xxx GPIO lines. - Support GMMR GPIO regions on the Intel Cherryview. This fixes a serialization problem on these platforms. - Pad retention support for the Samsung Exynos 5433. - Handle suspend-to-ram in the AT91-pio4 driver. - Pin configuration support in the Aspeed driver. Cleanups: - The final name of Rockchip RK1108 was RV1108 so rename the driver and variables to stay consistent. ---------------------------------------------------------------- Alexandre Belloni (1): pinctrl: at91-pio4: handle suspend to ram Alexandre TORGUE (5): pinctrl: stm32: add possibility to use gpio-ranges to declare bank range pinctrl: stm32: replace device_initcall() with arch_initcall() Documentation: dt: Remove ngpios from stm32-pinctrl binding pinctrl: stm32: Add STM32F469 MCU support pinctrl: Add st,stm32f469-pinctrl compatible to stm32-pinctrl Andrew Jeffery (5): pinctrl: aspeed: Fix unused-const-variable warnings pinctrl: aspeed: Document pinconf in devicetree bindings pinctrl: aspeed: Add core pinconf support pinctrl: aspeed: g4: Add pinconf support pinctrl: aspeed: g5: Add pinconf support Andy Shevchenko (2): pinctrl: Fix spelling typos pinctrl: core: Make pinctrl_init_controller() static Andy Yan (2): dt-bindings: rockchip,pinctrl: rename RK1108 to RV1108 pinctrl: rockchip: rename RK1108 to RV1108 Charles Keepax (4): pinctrl: Fix trivial spelling typo in a comment pinctrl: samsung: Remove unused local variable pinctrl: samsung: Register pinctrl before GPIO pinctrl: samsung: Use devres version of gpiochip_add_data Colin Ian King (1): ARM: at91/at91-pinctrl documentation: fix spelling mistake: "contoller" -> "controller" Geert Uytterhoeven (7): pinctrl: sh-pfc: r8a7795: Fix hscif2_clk_b and hscif4_ctrl pinctrl: sh-pfc: r8a7795: Restore sort order pinctrl: sh-pfc: Update info pointer after SoC-specific init pinctrl: sh-pfc: r8a7795: Add support for R-Car H3 ES2.0 pinctrl: sh-pfc: r8a7795: Add SCIF support pinctrl: sh-pfc: r8a7795: Add SCIF_CLK support pinctrl: pinmux: Fix kerneldoc for pinmux_generic_add_function() Gregory CLEMENT (3): pinctrl: dt-bindings: Add documentation for Armada 37xx pin controllers pinctrl: armada-37xx: Add pin controller support for Armada 37xx pinctrl: armada-37xx: Add gpio support Hans de Goede (1): pinctrl: cherryview: Add support for GMMR GPIO opregion Icenowy Zheng (5): pinctrl: sunxi: refactor pinctrl choice selecting for ARM64 dt-bindings: fix for Allwinner H5 pinctrl's compatible dt: bindings: add binding for Allwinner A64 R_PIO pinctrl pinctrl: sunxi: Add A64 R_PIO controller support pinctrl: sunxi: select GPIOLIB Jacopo Mondi (2): Documentation: pinctrl: Add "pinmux" property pinctrl: generic: Add bi-directional and output-enable Jeffy Chen (1): pinctrl: rockchip: add irq_enable & irq_disable ops Jerome Brunet (4): pinctrl: meson: gxbb: add i2s output pins pinctrl: meson: gxbb: add spdif output pins pinctrl: meson: gxl: add i2s output pins pinctrl: meson: gxl: add spdif output pins Jesper Nilsson (2): pinctrl: Add bindings for ARTPEC-6 pinmux pinctrl: Add pincontrol driver for ARTPEC-6 SoC John Keeping (4): pinctrl: rockchip: remove unnecessary locking pinctrl: rockchip: convert to raw spinlock pinctrl: rockchip: split out verification of mux settings pinctrl: rockchip: avoid hardirq-unsafe functions in irq_chip Julia Cartwright (4): pinctrl: bcm: make use of raw_spinlock variants pinctrl: amd: make use of raw_spinlock variants pinctrl: sirf: atlas7: make use of raw_spinlock variants pinctrl: sunxi: make use of raw_spinlock variants Krzysztof Kozlowski (1): MAINTAINERS: pinctrl: Add git tree to Samsung pinctrl entry Linus Walleij (4): Merge tag 'sh-pfc-for-v4.12-tag1' of git://git.kernel.org/.../geert/renesas-drivers into devel Merge tag 'sh-pfc-for-v4.12-tag2' of git://git.kernel.org/.../geert/renesas-drivers into devel Merge tag 'samsung-pinctrl-4.12' of git://git.kernel.org/.../pinctrl/samsung into devel Merge tag 'sh-pfc-for-v4.12-tag3' of git://git.kernel.org/.../geert/renesas-drivers into devel Marek Szyprowski (2): pinctrl: samsung: Ensure that pad retention is disabled on driver init pinctrl: samsung: Add support for pad retention control for Exynos5433 SoCs Martin Blumenstingl (3): pinctrl: meson: gxl: add the missing PWM pin definitions pinctrl: meson: meson8b: fix the NAND DQS pins pinctrl: meson: meson8b: rename the NAND DQS pin definitions Masahiro Yamada (2): pinctrl: uniphier: remove obsoleted compatibles pinctrl: uniphier: make drivers non-modular Neil Armstrong (2): pinctrl: meson-gxl: Fix inverted registers and add missing pins pinctrl: meson: use gpio-ranges from DT Paul Gortmaker (1): pinctrl: make artpec6 explicitly non-modular Rick Altherr (1): pinctrl: aspeed: Allow disabling Port D and Port E loopback mode Sean Wang (1): pinctrl: mediatek: Add missing pinctrl bindings for mt7623 Sergei Shtylyov (5): pinctrl: sh-pfc: r8a7791: Add missing HSCIF1 pinmux data pinctrl: sh-pfc: r8a7791: Add missing DVC_MUTE signal pinctrl: sh-pfc: r8a7791: Fix SCIF2 pinmux data pinctrl: sh-pfc: r8a7791: Fix IPSR comment typos pinctrl: sh-pfc: r8a7794: Swap ATA signals Thierry Reding (1): pinctrl: tegra: xusb: Silence sparse warnings Timur Tabi (1): pinctrl: qcom: qdf2xxx: add names to the gpios Wei Yongjun (2): pinctrl: artpec6: Remove .owner field for driver pinctrl: artpec6: Fix return value check in artpec6_pmx_probe() david.wu (5): pinctrl: rockchip: Add 3bit width mux support pinctrl: rockchip: Add mux recalculation support pinctrl: rockchip: Add rk3328 pinctrl support pinctrl: rockchip:Add input schmitt support pinctrl: rockchip: Add input schmitt support for rk3328 .../bindings/clock/armada3700-xtal-clock.txt | 7 +- .../bindings/pinctrl/allwinner,sunxi-pinctrl.txt | 3 +- .../bindings/pinctrl/atmel,at91-pinctrl.txt | 2 +- .../bindings/pinctrl/axis,artpec6-pinctrl.txt | 85 + .../pinctrl/marvell,armada-37xx-pinctrl.txt | 183 + .../devicetree/bindings/pinctrl/pinctrl-aspeed.txt | 40 +- .../bindings/pinctrl/pinctrl-bindings.txt | 48 +- .../bindings/pinctrl/rockchip,pinctrl.txt | 17 +- .../bindings/pinctrl/st,stm32-pinctrl.txt | 3 +- MAINTAINERS | 4 + arch/arm/boot/dts/rk1108.dtsi | 2 +- drivers/pinctrl/Kconfig | 11 + drivers/pinctrl/Makefile | 3 +- drivers/pinctrl/aspeed/pinctrl-aspeed-g4.c | 129 +- drivers/pinctrl/aspeed/pinctrl-aspeed-g5.c | 153 +- drivers/pinctrl/aspeed/pinctrl-aspeed.c | 225 +- drivers/pinctrl/aspeed/pinctrl-aspeed.h | 28 + drivers/pinctrl/bcm/pinctrl-iproc-gpio.c | 44 +- drivers/pinctrl/bcm/pinctrl-nsp-gpio.c | 46 +- drivers/pinctrl/core.c | 10 +- drivers/pinctrl/intel/pinctrl-cherryview.c | 47 + drivers/pinctrl/meson/pinctrl-meson-gxbb.c | 49 + drivers/pinctrl/meson/pinctrl-meson-gxl.c | 186 +- drivers/pinctrl/meson/pinctrl-meson.c | 14 +- drivers/pinctrl/meson/pinctrl-meson8b.c | 12 +- drivers/pinctrl/mvebu/Kconfig | 7 + drivers/pinctrl/mvebu/Makefile | 3 +- drivers/pinctrl/mvebu/pinctrl-armada-37xx.c | 748 +++ drivers/pinctrl/pinconf-generic.c | 5 +- drivers/pinctrl/pinconf.c | 4 +- drivers/pinctrl/pinctrl-amd.c | 66 +- drivers/pinctrl/pinctrl-amd.h | 2 +- drivers/pinctrl/pinctrl-artpec6.c | 979 ++++ drivers/pinctrl/pinctrl-at91-pio4.c | 34 +- drivers/pinctrl/pinctrl-rockchip.c | 443 +- drivers/pinctrl/pinmux.c | 2 +- drivers/pinctrl/qcom/pinctrl-qdf2xxx.c | 14 +- drivers/pinctrl/samsung/pinctrl-exynos.c | 63 + drivers/pinctrl/samsung/pinctrl-samsung.c | 47 +- drivers/pinctrl/sh-pfc/Makefile | 1 + drivers/pinctrl/sh-pfc/core.c | 3 + drivers/pinctrl/sh-pfc/pfc-r8a7791.c | 18 +- drivers/pinctrl/sh-pfc/pfc-r8a7794.c | 16 +- drivers/pinctrl/sh-pfc/pfc-r8a7795-es1.c | 5705 ++++++++++++++++++++ drivers/pinctrl/sh-pfc/pfc-r8a7795.c | 4200 +++----------- drivers/pinctrl/sh-pfc/sh_pfc.h | 1 + drivers/pinctrl/sirf/pinctrl-atlas7.c | 44 +- drivers/pinctrl/stm32/Kconfig | 6 + drivers/pinctrl/stm32/Makefile | 1 + drivers/pinctrl/stm32/pinctrl-stm32.c | 115 +- drivers/pinctrl/stm32/pinctrl-stm32f429.c | 6 +- drivers/pinctrl/stm32/pinctrl-stm32f469.c | 1578 ++++++ drivers/pinctrl/stm32/pinctrl-stm32f746.c | 7 +- drivers/pinctrl/stm32/pinctrl-stm32h743.c | 6 +- drivers/pinctrl/sunxi/Kconfig | 13 +- drivers/pinctrl/sunxi/Makefile | 1 + drivers/pinctrl/sunxi/pinctrl-sun50i-a64-r.c | 125 + drivers/pinctrl/sunxi/pinctrl-sunxi.c | 26 +- drivers/pinctrl/sunxi/pinctrl-sunxi.h | 2 +- drivers/pinctrl/tegra/pinctrl-tegra-xusb.c | 4 + drivers/pinctrl/uniphier/Kconfig | 16 +- drivers/pinctrl/uniphier/pinctrl-uniphier-core.c | 48 +- drivers/pinctrl/uniphier/pinctrl-uniphier-ld11.c | 11 +- drivers/pinctrl/uniphier/pinctrl-uniphier-ld20.c | 11 +- drivers/pinctrl/uniphier/pinctrl-uniphier-ld4.c | 13 +- drivers/pinctrl/uniphier/pinctrl-uniphier-ld6b.c | 13 +- drivers/pinctrl/uniphier/pinctrl-uniphier-pro4.c | 13 +- drivers/pinctrl/uniphier/pinctrl-uniphier-pro5.c | 13 +- drivers/pinctrl/uniphier/pinctrl-uniphier-pxs2.c | 13 +- drivers/pinctrl/uniphier/pinctrl-uniphier-sld8.c | 13 +- drivers/pinctrl/uniphier/pinctrl-uniphier.h | 11 +- include/dt-bindings/pinctrl/mt7623-pinfunc.h | 30 +- include/linux/pinctrl/pinconf-generic.h | 3 + 73 files changed, 11882 insertions(+), 3972 deletions(-) create mode 100644 Documentation/devicetree/bindings/pinctrl/axis,artpec6-pinctrl.txt create mode 100644 Documentation/devicetree/bindings/pinctrl/marvell,armada-37xx-pinctrl.txt create mode 100644 drivers/pinctrl/mvebu/pinctrl-armada-37xx.c create mode 100644 drivers/pinctrl/pinctrl-artpec6.c create mode 100644 drivers/pinctrl/sh-pfc/pfc-r8a7795-es1.c create mode 100644 drivers/pinctrl/stm32/pinctrl-stm32f469.c create mode 100644 drivers/pinctrl/sunxi/pinctrl-sun50i-a64-r.c -- To unsubscribe from this list: send the line "unsubscribe linux-gpio" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html