Hi Linus, this is the bulk of pin control changes for the v5.7 kernel cycle. Nothing special about pin control this time, it is all pretty linear development, and all in the drivers. Some details are provided in the signed tag. Please pull it in! Yours, Linus Walleij The following changes since commit bb6d3fb354c5ee8d6bde2d576eb7220ea09862b9: Linux 5.6-rc1 (2020-02-09 16:08:48 -0800) are available in the Git repository at: git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl.git tags/pinctrl-v5.7-1 for you to fetch changes up to c42f69b4207e104229242c3d9da43b55d4b95d6d: pinctrl: qcom: fix compilation error (2020-03-31 16:43:54 +0200) ---------------------------------------------------------------- This is the bulk of pin control changes for the v5.7 kernel cycle. There are no core changes this time, only driver developments. - New driver for the Dialog Semiconductor DA9062 Power Management Integrated Circuit (PMIC). - Renesas SH-PFC has improved consistency, with group and register checks in the configuration checker. - New subdriver for the Qualcomm IPQ6018. - Add the RGMII pin control functionality to Qualcomm IPQ8064. - Performance and code quality cleanups in the Mediatek driver. - Improve the Broadcom BCM2835 support to cover all the GPIOs that exist in it. - The Allwinner/Sunxi driver properly masks non-wakeup IRQs on suspend. - Add some missing groups and functions to the Ingenic driver. - Convert some of the Freescale device tree bindings to use the new and all improved JSON YAML markup. - Refactorings and support for the SFIO/GPIO in the Tegra194 SoC driver. - Support high impedance mode in the Spreadtrum/Unisoc driver. ---------------------------------------------------------------- Ajay Kishore (1): pinctrl: qcom: use scm_call to route GPIO irq to Apps Andy Shevchenko (1): MAINTAINERS: Sort entries in database for PIN CONTROLLER Anson Huang (4): dt-bindings: pinctrl: Convert i.MX8MQ to json-schema dt-bindings: pinctrl: Convert i.MX8MM to json-schema dt-bindings: pinctrl: Convert i.MX8MN to json-schema dt-bindings: pinctrl: imx8mp: Replace the uint32-array with uint32-matrix Ansuel Smith (2): ipq8064: pinctrl: Fixed missing RGMII pincontrol definitions pinctrl: qcom: fix compilation error Baolin Wang (3): pinctrl: Export some needed symbols at module load time pinctrl: sprd: Allow the SPRD pinctrl driver building into a module pinctrl: sprd: Fix the kconfig warning Dan Carpenter (1): pinctrl: mediatek: Fix some off by one bugs Geert Uytterhoeven (15): pinctrl: sh-pfc: checker: Move data before code pinctrl: sh-pfc: checker: Add helpers for reporting pinctrl: sh-pfc: checker: Add helper for safe name comparison pinctrl: sh-pfc: checker: Add check for config register conflicts pinctrl: sh-pfc: checker: Add check for enum ID conflicts pinctrl: sh-pfc: checker: Improve pin checks pinctrl: sh-pfc: checker: Improve pin function checks pinctrl: sh-pfc: checker: Improve pin group checks pinctrl: sh-pfc: checker: Add drive strength register checks pinctrl: sh-pfc: checker: Add bias register checks pinctrl: sh-pfc: checker: Add ioctrl register checks pinctrl: sh-pfc: checker: Add data register checks pinctrl: sh-pfc: checker: Add function GPIO checks pinctrl: sh-pfc: gpio: Return early in gpio_pin_to_irq() pinctrl: sh-pfc: Remove use of ARCH_R8A7795 Gustavo A. R. Silva (2): pinctrl: uniphier: Replace zero-length array with flexible-array member pinctrl: sirf/atlas7: Replace zero-length array with flexible-array member Igor Vavro (1): pinctrl: meson: add tsin pinctrl for meson gxbb/gxl/gxm Jonathan Neuschäfer (1): dt-bindings: pinctrl: at91: Fix a typo ("descibe") Josh Poimboeuf (1): pinctrl: ingenic: Improve unreachable code generation Light Hsieh (6): pinctrl: mediatek: Check gpio pin number and use binary search in mtk_hw_pin_field_lookup() pinctrl: mediatek: Supporting driving setting without mapping current to register value pinctrl: mediatek: Refine mtk_pinconf_get() and mtk_pinconf_set() pinctrl: mediatek: Refine mtk_pinconf_get() pinctrl: mediatek: Backward compatible to previous Mediatek's bias-pull usage pinctrl: mediatek: Add support for pin configuration dump via debugfs. Linhua Xu (2): pinctrl: sprd: Use the correct pin output configuration pinctrl: sprd: Add pin high impedance mode support Linus Walleij (2): Merge tag 'sh-pfc-for-v5.7-tag1' of git://git.kernel.org/.../geert/renesas-drivers into devel Revert "pinctrl: mvebu: armada-37xx: use use platform api" Marco Felsch (2): pinctrl: da9062: add driver support gpiolib: export gpiochip_get_desc Matheus Castello (1): pinctrl: actions: Fix functions groups names for S700 SoC Matti Vaittinen (1): pinctrl: Use new GPIO_LINE_DIRECTION Paul Boddie (1): pinctrl: ingenic: add hdmi-ddc pin control group Peng Fan (1): pinctrl: freescale: drop the dependency on ARM64 for i.MX8M Samuel Holland (2): pinctrl: sunxi: Forward calls to irq_set_irq_wake pinctrl: sunxi: Mask non-wakeup IRQs on suspend Sricharan R (2): dt-bindings: pinctrl: qcom: Add ipq6018 pinctrl bindings pinctrl: qcom: Add ipq6018 pinctrl driver Stefan Wahren (3): pinctrl: bcm2835: Drop unused define pinctrl: bcm2835: Refactor platform data pinctrl: bcm2835: Add support for all GPIOs on BCM2711 Takashi Iwai (1): pinctrl: mediatek: Use scnprintf() for avoiding potential buffer overflow Thierry Reding (6): pinctrl: tegra: Fix whitespace issues for improved readability pinctrl: tegra: Fix "Scmitt" -> "Schmitt" typo pinctrl: tegra: Pass struct tegra_pmx for pin range check pinctrl: tegra: Do not add default pin range on Tegra194 pinctrl: tegra: Renumber the GG.0 and GG.1 pins pinctrl: tegra: Add SFIO/GPIO programming on Tegra194 YueHaibing (2): pinctrl: mediatek: remove set but not used variable 'e' pinctrl: da9062: Fix error gpiolib.h path 周琰杰 (Zhou Yanjie) (1): pinctrl: Ingenic: Add missing parts for X1830. .../bindings/pinctrl/atmel,at91-pinctrl.txt | 2 +- .../bindings/pinctrl/fsl,imx8mm-pinctrl.txt | 36 - .../bindings/pinctrl/fsl,imx8mm-pinctrl.yaml | 82 ++ .../bindings/pinctrl/fsl,imx8mn-pinctrl.txt | 39 - .../bindings/pinctrl/fsl,imx8mn-pinctrl.yaml | 82 ++ .../bindings/pinctrl/fsl,imx8mp-pinctrl.yaml | 25 +- .../bindings/pinctrl/fsl,imx8mq-pinctrl.txt | 36 - .../bindings/pinctrl/fsl,imx8mq-pinctrl.yaml | 82 ++ .../bindings/pinctrl/qcom,ipq6018-pinctrl.yaml | 153 +++ MAINTAINERS | 37 +- drivers/gpio/gpiolib.c | 1 + drivers/pinctrl/Kconfig | 12 + drivers/pinctrl/Makefile | 1 + drivers/pinctrl/actions/pinctrl-s700.c | 510 ++++----- drivers/pinctrl/bcm/pinctrl-bcm2835.c | 111 +- drivers/pinctrl/bcm/pinctrl-iproc-gpio.c | 5 +- drivers/pinctrl/core.c | 1 + drivers/pinctrl/freescale/Kconfig | 8 +- drivers/pinctrl/mediatek/pinctrl-mt6765.c | 11 +- drivers/pinctrl/mediatek/pinctrl-mt8183.c | 7 +- drivers/pinctrl/mediatek/pinctrl-mtk-common-v2.c | 264 ++++- drivers/pinctrl/mediatek/pinctrl-mtk-common-v2.h | 16 + drivers/pinctrl/mediatek/pinctrl-mtk-common.c | 5 +- drivers/pinctrl/mediatek/pinctrl-paris.c | 363 ++++--- drivers/pinctrl/mediatek/pinctrl-paris.h | 3 + drivers/pinctrl/meson/pinctrl-meson-gxbb.c | 35 + drivers/pinctrl/meson/pinctrl-meson-gxl.c | 27 + drivers/pinctrl/mvebu/pinctrl-armada-37xx.c | 17 +- drivers/pinctrl/nomadik/pinctrl-nomadik.c | 7 +- drivers/pinctrl/pinconf-generic.c | 1 + drivers/pinctrl/pinctrl-amd.c | 5 +- drivers/pinctrl/pinctrl-at91.c | 5 +- drivers/pinctrl/pinctrl-axp209.c | 7 +- drivers/pinctrl/pinctrl-da9062.c | 300 ++++++ drivers/pinctrl/pinctrl-ingenic.c | 55 +- drivers/pinctrl/pinctrl-ocelot.c | 5 +- drivers/pinctrl/pinctrl-oxnas.c | 5 +- drivers/pinctrl/pinctrl-pic32.c | 5 +- drivers/pinctrl/pinctrl-pistachio.c | 5 +- drivers/pinctrl/pinctrl-rk805.c | 7 +- drivers/pinctrl/pinctrl-rockchip.c | 5 +- drivers/pinctrl/pinctrl-rza1.c | 5 +- drivers/pinctrl/pinctrl-rza2.c | 6 +- drivers/pinctrl/pinctrl-st.c | 14 +- drivers/pinctrl/pinctrl-stmfx.c | 17 +- drivers/pinctrl/pinctrl-sx150x.c | 9 +- drivers/pinctrl/qcom/Kconfig | 10 + drivers/pinctrl/qcom/Makefile | 1 + drivers/pinctrl/qcom/pinctrl-ipq6018.c | 1107 ++++++++++++++++++++ drivers/pinctrl/qcom/pinctrl-ipq8064.c | 10 +- drivers/pinctrl/qcom/pinctrl-msm.c | 46 +- drivers/pinctrl/sh-pfc/Kconfig | 4 +- drivers/pinctrl/sh-pfc/core.c | 307 ++++-- drivers/pinctrl/sh-pfc/gpio.c | 5 +- drivers/pinctrl/sirf/pinctrl-atlas7.c | 2 +- drivers/pinctrl/sprd/Kconfig | 10 +- drivers/pinctrl/sprd/pinctrl-sprd.c | 25 +- drivers/pinctrl/stm32/pinctrl-stm32.c | 4 +- drivers/pinctrl/sunxi/pinctrl-sunxi.c | 16 +- drivers/pinctrl/tegra/pinctrl-tegra.c | 52 +- drivers/pinctrl/tegra/pinctrl-tegra.h | 5 +- drivers/pinctrl/tegra/pinctrl-tegra194.c | 47 +- drivers/pinctrl/uniphier/pinctrl-uniphier-core.c | 2 +- drivers/pinctrl/vt8500/pinctrl-wmt.c | 6 +- 64 files changed, 3350 insertions(+), 743 deletions(-) delete mode 100644 Documentation/devicetree/bindings/pinctrl/fsl,imx8mm-pinctrl.txt create mode 100644 Documentation/devicetree/bindings/pinctrl/fsl,imx8mm-pinctrl.yaml delete mode 100644 Documentation/devicetree/bindings/pinctrl/fsl,imx8mn-pinctrl.txt create mode 100644 Documentation/devicetree/bindings/pinctrl/fsl,imx8mn-pinctrl.yaml delete mode 100644 Documentation/devicetree/bindings/pinctrl/fsl,imx8mq-pinctrl.txt create mode 100644 Documentation/devicetree/bindings/pinctrl/fsl,imx8mq-pinctrl.yaml create mode 100644 Documentation/devicetree/bindings/pinctrl/qcom,ipq6018-pinctrl.yaml create mode 100644 drivers/pinctrl/pinctrl-da9062.c create mode 100644 drivers/pinctrl/qcom/pinctrl-ipq6018.c