[GIT PULL] pin control bulk changes for the v6.0 cycle

From: Linus Walleij
Date: Tue Aug 09 2022 - 17:53:33 EST


Hi Linus,

here is the big pin control pull request for v6.0, coming from a shaky
wireless in Germany.

Details are in the signed tag as usual.

Outside the pinctrl driver and DT bindings we hit some Arm DT files,
patched by the maintainers.

Other than that it is business as usual.

Please pull it in!

Yours,
Linus Walleij

The following changes since commit f2906aa863381afb0015a9eb7fefad885d4e5a56:

Linux 5.19-rc1 (2022-06-05 17:18:54 -0700)

are available in the Git repository at:

git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl.git
tags/pinctrl-v6.0-1

for you to fetch changes up to 5b045200b53a9b95f87409b5c13f43adb6f1da6c:

dt-bindings: pinctrl: qcom,pmic-gpio: add PM8226 constraints
(2022-08-03 20:32:57 +0200)

----------------------------------------------------------------
Pin control bulk changes for v6.0:

Core changes:

- Add PINCTRL_PINGROUP() helper macro (and use it in the AMD driver).

New drivers:

- Intel Meteor Lake support.

- Reneasas RZ/V2M and r8a779g0 (R-Car V4H).

- AXP209 variants AXP221, AXP223 and AXP809.

- Qualcomm MSM8909, PM8226, PMP8074 and SM6375.

- Allwinner D1.

Improvements:

- Proper pin multiplexing in the AMD driver.

- Mediatek MT8192 can use generic drive strength and pin
bias, then fixes on top plus some I2C pin group fixes.

- Have the Allwinner Sunplus SP7021 use the generic DT schema and
make interrupts optional.

- Handle Qualcomm SC7280 ADSP.

- Handle Qualcomm MSM8916 CAMSS GP clock muxing.

- High impedance bias on ZynqMP.

- Serialize StarFive access to MMIO.

- Immutable gpiochip for BCM2835, Ingenic, Qualcomm SPMI GPIO.

----------------------------------------------------------------
Aidan MacDonald (2):
pinctrl: ingenic: Use irqd_to_hwirq()
pinctrl: ingenic: Convert to immutable irq chip

Allen-KH Cheng (2):
dt-bindings: pinctrl: mt8186: Add gpio-line-names property
dt-bindings: pinctrl: mt8186: Add and use drive-strength-microamp

Andre Przywara (2):
dt-bindings: pinctrl: sunxi: Make interrupts optional
dt-bindings: pinctrl: sunxi: allow vcc-pi-supply

Andy Shevchenko (11):
MAINTAINERS: Update Intel pin control to Supported
Merge branch 'ib-v5.20-amd-pinctrl'
pinctrl: intel: Embed struct pingroup into struct intel_pingroup
pinctrl: baytrail: Switch to to embedded struct pingroup
pinctrl: cherryview: Switch to to embedded struct pingroup
pinctrl: lynxpoint: Switch to to embedded struct pingroup
pinctrl: merrifield: Switch to to embedded struct pingroup
pinctrl: intel: Switch to to embedded struct pingroup
pinctrl: intel: Drop no more used members of struct intel_pingroup
pinctrl: intel: Add Intel Meteor Lake pin controller support
pinctrl: core: Use device_match_of_node() helper

AngeloGioacchino Del Regno (4):
dt-bindings: pinctrl: mt8195: Fix name for
mediatek,rsel-resistance-in-si-unit
dt-bindings: pinctrl: mt8195: Add and use drive-strength-microamp
dt-bindings: pinctrl: mt8195: Add gpio-line-names property
dt-bindings: pinctrl: mt8195: Use drive-strength-microamp in examples

Basavaraj Natikar (9):
pinctrl: Add pingroup and define PINCTRL_PINGROUP
pinctrl: amd: Remove amd_pingroup and use pingroup
pinctrl: amd: Use PINCTRL_PINGROUP to manage pingroups
pinctrl: amd: Define and use AMD_PINS macro
pinctrl: amd: Add amd_get_iomux_res function
pinctrl: amd: Implement pinmux functionality
pinctrl: amd: Use devm_platform_get_and_ioremap_resource
pinctrl: amd: Don't save/restore interrupt status and wake status bits
pinctrl: amd: Remove contact information

Claudiu Beznea (2):
pinctrl: at91-pio4: remove #ifdef CONFIG_PM_SLEEP
pinctrl: at91: remove #ifdef CONFIG_PM

Clément Léger (1):
pinctrl: ocelot: allow building as a module

Dominik Kobinski (1):
pinctrl: qcom: spmi-gpio: Add pm8226 compatibility

Fabio Estevam (1):
pinctrl: imx93: Add MODULE_DEVICE_TABLE()

Geert Uytterhoeven (2):
dt-bindings: pinctrl: renesas: Remove spaces before #define
pinctrl: renesas: r8a779f0: Remove unused POC2

Guodong Liu (5):
pinctrl: mediatek: add generic driving setup property on mt8192
pinctrl: mediatek: add drive for I2C related pins on mt8192
pinctrl: mediatek: add rsel setting on mt8192
pinctrl: mediatek: dropping original advanced drive configuration function
pinctrl: mediatek: fix the pinconf definition of some GPIO pins

Jesse Taube (1):
ARM: dts: imxrt1170-pinfunc: Add pinctrl binding header

Jianhua Lu (1):
pinctrl: qcom: sm8250: Fix PDC map

Jianlong Huang (1):
pinctrl: starfive: Serialize adding groups and functions

John Garry (1):
pinctrl: qcom: Make PINCTRL_SM8450 depend on PINCTRL_MSM

Konrad Dybcio (2):
dt-bindings: pinctrl: Add DT schema for SM6375 TLMM
pinctrl: qcom: Add SM6375 TLMM driver

Krzysztof Kozlowski (4):
dt-bindings: pinctrl: sunplus,sp7021-pinctrl: reference generic schema
pinctrl: samsung: do not use bindings header with constants
dt-bindings: pinctrl: nuvoton,wpcm450-pinctrl: align key node name
dt-bindings: pinctrl: qcom,pmic-gpio: add PM8226 constraints

Kuninori Morimoto (21):
dt-bindings: pinctrl: renesas,pfc: Document r8a779g0 support
pinctrl: renesas: Add PORT_GP_CFG_13 macros
pinctrl: renesas: r8a779g0: Fixup MODSEL8
pinctrl: renesas: r8a779g0: Remove unused NOGP definitions
pinctrl: renesas: r8a779g0: Remove unused IPxSRx definitions
pinctrl: renesas: r8a779g0: Remove unused MOD_SELx definitions
pinctrl: renesas: r8a779g0: Tidy up ioctrl_regs
pinctrl: renesas: r8a779g0: Tidyup POC1 voltage
pinctrl: renesas: r8a779g0: Add missing TCLKx_A/TCLKx_B/TCLKx_X
pinctrl: renesas: r8a779g0: Add missing IRQx_A/IRQx_B
pinctrl: renesas: r8a779g0: Add missing HSCIF3_A
pinctrl: renesas: r8a779g0: Add missing HSCIF1_X
pinctrl: renesas: r8a779g0: Add missing SCIF3
pinctrl: renesas: r8a779g0: Add missing SCIF1_X
pinctrl: renesas: r8a779g0: Add missing CANFD5_B
pinctrl: renesas: r8a779g0: Add missing TPU0TOx_A
pinctrl: renesas: r8a779g0: Add missing FlexRay
pinctrl: renesas: r8a779g0: Add missing PWM
pinctrl: renesas: r8a779g0: Add missing ERROROUTC_A
pinctrl: renesas: r8a779g0: Add missing MODSELx for TSN0
pinctrl: renesas: r8a779g0: Add missing MODSELx for AVBx

LUU HOAI (1):
pinctrl: renesas: Initial R8A779G0 (R-Car V4H) PFC support

Lad Prabhakar (1):
pinctrl: renesas: rzg2l: Return -EINVAL for pins which have input disabled

Linus Walleij (7):
Merge branch 'ib-v5.20-amd-pinctrl' into devel
pinctrl: mediatek: mt8192: Fix compile warnings
Merge tag 'renesas-pinctrl-for-v5.20-tag1' of
git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-drivers
into devel
pinctrl: qcom: sc7280: Fix compile bug
Merge tag 'intel-pinctrl-v5.20-1' of
gitolite.kernel.org:pub/scm/linux/kernel/git/pinctrl/intel into devel
Merge tag 'renesas-pinctrl-for-v5.20-tag2' of
git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-drivers
into devel
Revert "pinctrl: qcom: spmi-gpio: make the irqchip immutable"

Lukas Bulwahn (1):
MAINTAINERS: add include/dt-bindings/pinctrl to PIN CONTROL SUBSYSTEM

Mario Limonciello (3):
pinctrl: amd: Fix newline declaration in debugfs output
pinctrl: amd: Use unicode for debugfs output
pinctrl: amd: Fix an unused variable

Miaoqian Lin (1):
pinctrl: nomadik: Fix refcount leak in nmk_pinctrl_dt_subnode_to_map

Nikita Travkin (1):
pinctrl: qcom: msm8916: Allow CAMSS GP clocks to be muxed

Nícolas F. R. A. Prado (3):
dt-bindings: pinctrl: mt8192: Add drive-strength-microamp
dt-bindings: pinctrl: mt8192: Use generic bias instead of pull-*-adv
dt-bindings: pinctrl: mt8192: Add RSEL values to bias-pull-{up,down}

Phil Edworthy (2):
dt-bindings: pinctrl: Add DT bindings for Renesas RZ/V2M pinctrl
pinctrl: renesas: Add RZ/V2M pin and gpio controller driver

Phong Hoang (1):
pinctrl: renesas: r8a779g0: Add pins, groups and functions

Rob Herring (1):
dt-bindings: pinctrl: st,stm32: Correct 'resets' property name

Robert Marko (3):
pinctrl: qcom: spmi-gpio: make the irqchip immutable
dt-bindings: pinctrl: qcom,pmic-gpio: add PMP8074
pinctrl: qcom-pmic-gpio: add support for PMP8074

Sai Krishna Potthuri (4):
firmware: xilinx: Add configuration values for tri-state
dt-bindings: pinctrl-zynqmp: Add output-enable configuration
pinctrl: pinctrl-zynqmp: Add support for output-enable and
bias-high-impedance
pinctrl: pinctrl-zynqmp: Fix kernel-doc warning

Samuel Holland (11):
pinctrl: sunxi: Remove reset controller consumers
ARM: dts: sunxi: Drop resets from r_pio nodes
dt-bindings: pinctrl: sunxi: Disallow the resets property
dt-bindings: gpio: Add AXP221/AXP223/AXP809 compatibles
pinctrl: axp209: Support the AXP221/AXP223/AXP809 variant
dt-bindings: pinctrl: Add compatible for Allwinner D1
pinctrl: sunxi: Add I/O bias setting for H6 R-PIO
pinctrl: sunxi: Support the 2.5V I/O bias mode
pinctrl: sunxi: Refactor register/offset calculation
pinctrl: sunxi: Make some layout parameters dynamic
pinctrl: sunxi: Add driver for Allwinner D1

Slark Xiao (1):
pinctrl: at91: Fix typo 'the the' in comment

Srinivasa Rao Mandadapu (3):
dt-bindings: pinctrl: qcom: sc7280: Add boolean param for ADSP
bypass platforms
pinctrl: qcom: sc7280: Add clock optional check for ADSP bypass targets
pinctrl: qcom: sc7280: Fix compile bug

Stefan Wahren (2):
pinctrl: bcm2835: drop irq_enable/disable callbacks
pinctrl: bcm2835: Make the irqchip immutable

Stephan Gerhold (2):
dt-bindings: pinctrl: Add DT schema for qcom,msm8909-tlmm
pinctrl: qcom: Add pinctrl driver for MSM8909

Xiang wangx (1):
pinctrl: aspeed: Fix typo in comment

Xin Gao (1):
pinctrl: mvebu: Missing a blank line after declarations.

.../bindings/gpio/x-powers,axp209-gpio.yaml | 6 +
.../pinctrl/allwinner,sun4i-a10-pinctrl.yaml | 34 +-
.../bindings/pinctrl/nuvoton,wpcm450-pinctrl.yaml | 2 +-
.../bindings/pinctrl/pinctrl-mt8186.yaml | 31 +-
.../bindings/pinctrl/pinctrl-mt8192.yaml | 64 +-
.../bindings/pinctrl/pinctrl-mt8195.yaml | 41 +-
.../bindings/pinctrl/qcom,msm8909-tlmm.yaml | 152 +
.../bindings/pinctrl/qcom,pmic-gpio.yaml | 4 +
.../pinctrl/qcom,sc7280-lpass-lpi-pinctrl.yaml | 5 +
.../bindings/pinctrl/qcom,sm6375-tlmm.yaml | 158 +
.../devicetree/bindings/pinctrl/renesas,pfc.yaml | 1 +
.../bindings/pinctrl/renesas,rzv2m-pinctrl.yaml | 170 +
.../bindings/pinctrl/st,stm32-pinctrl.yaml | 4 +-
.../bindings/pinctrl/sunplus,sp7021-pinctrl.yaml | 5 +-
.../bindings/pinctrl/xlnx,zynqmp-pinctrl.yaml | 4 +
MAINTAINERS | 3 +-
arch/arm/boot/dts/imxrt1170-pinfunc.h | 1561 +++++++
arch/arm/boot/dts/sun6i-a31.dtsi | 1 -
arch/arm/boot/dts/sun8i-a23-a33.dtsi | 1 -
arch/arm/boot/dts/sun9i-a80.dtsi | 1 -
drivers/pinctrl/Kconfig | 2 +-
drivers/pinctrl/aspeed/pinmux-aspeed.h | 2 +-
drivers/pinctrl/bcm/pinctrl-bcm2835.c | 21 +-
drivers/pinctrl/core.c | 2 +-
drivers/pinctrl/freescale/pinctrl-imx93.c | 1 +
drivers/pinctrl/intel/Kconfig | 8 +
drivers/pinctrl/intel/Makefile | 1 +
drivers/pinctrl/intel/pinctrl-baytrail.c | 18 +-
drivers/pinctrl/intel/pinctrl-cherryview.c | 16 +-
drivers/pinctrl/intel/pinctrl-intel.c | 14 +-
drivers/pinctrl/intel/pinctrl-intel.h | 25 +-
drivers/pinctrl/intel/pinctrl-lynxpoint.c | 10 +-
drivers/pinctrl/intel/pinctrl-merrifield.c | 14 +-
drivers/pinctrl/intel/pinctrl-meteorlake.c | 417 ++
drivers/pinctrl/mediatek/pinctrl-mt8192.c | 296 +-
drivers/pinctrl/mvebu/pinctrl-mvebu.c | 10 +
drivers/pinctrl/nomadik/pinctrl-nomadik.c | 4 +-
drivers/pinctrl/pinctrl-amd.c | 242 +-
drivers/pinctrl/pinctrl-amd.h | 1376 ++++++-
drivers/pinctrl/pinctrl-at91-pio4.c | 7 +-
drivers/pinctrl/pinctrl-at91.c | 10 +-
drivers/pinctrl/pinctrl-axp209.c | 14 +-
drivers/pinctrl/pinctrl-ingenic.c | 64 +-
drivers/pinctrl/pinctrl-ocelot.c | 4 +-
drivers/pinctrl/pinctrl-starfive.c | 5 +
drivers/pinctrl/pinctrl-zynqmp.c | 11 +
drivers/pinctrl/qcom/Kconfig | 19 +-
drivers/pinctrl/qcom/Makefile | 2 +
drivers/pinctrl/qcom/pinctrl-lpass-lpi.c | 2 +-
drivers/pinctrl/qcom/pinctrl-lpass-lpi.h | 1 -
drivers/pinctrl/qcom/pinctrl-msm8909.c | 956 +++++
drivers/pinctrl/qcom/pinctrl-msm8916.c | 4 +-
drivers/pinctrl/qcom/pinctrl-sc7280-lpass-lpi.c | 1 -
drivers/pinctrl/qcom/pinctrl-sm6375.c | 1544 +++++++
drivers/pinctrl/qcom/pinctrl-sm8250.c | 2 +-
drivers/pinctrl/qcom/pinctrl-spmi-gpio.c | 3 +
drivers/pinctrl/renesas/Kconfig | 18 +
drivers/pinctrl/renesas/Makefile | 2 +
drivers/pinctrl/renesas/core.c | 6 +
drivers/pinctrl/renesas/pfc-r8a779f0.c | 2 -
drivers/pinctrl/renesas/pfc-r8a779g0.c | 4262 ++++++++++++++++++++
drivers/pinctrl/renesas/pinctrl-rzg2l.c | 2 +
drivers/pinctrl/renesas/pinctrl-rzv2m.c | 1119 +++++
drivers/pinctrl/renesas/sh_pfc.h | 9 +-
drivers/pinctrl/samsung/pinctrl-exynos.c | 6 +-
drivers/pinctrl/samsung/pinctrl-exynos.h | 3 +
drivers/pinctrl/samsung/pinctrl-samsung.c | 4 +-
drivers/pinctrl/samsung/pinctrl-samsung.h | 8 +
drivers/pinctrl/sunxi/Kconfig | 8 +-
drivers/pinctrl/sunxi/Makefile | 1 +
drivers/pinctrl/sunxi/pinctrl-sun20i-d1.c | 840 ++++
drivers/pinctrl/sunxi/pinctrl-sun50i-a100-r.c | 1 +
drivers/pinctrl/sunxi/pinctrl-sun50i-a100.c | 2 +-
drivers/pinctrl/sunxi/pinctrl-sun50i-a64-r.c | 1 -
drivers/pinctrl/sunxi/pinctrl-sun50i-h6-r.c | 2 +-
drivers/pinctrl/sunxi/pinctrl-sun50i-h616-r.c | 1 -
drivers/pinctrl/sunxi/pinctrl-sun50i-h616.c | 2 +-
drivers/pinctrl/sunxi/pinctrl-sun6i-a31-r.c | 22 +-
drivers/pinctrl/sunxi/pinctrl-sun8i-a23-r.c | 25 +-
drivers/pinctrl/sunxi/pinctrl-sun8i-a83t-r.c | 1 -
drivers/pinctrl/sunxi/pinctrl-sun9i-a80-r.c | 1 -
drivers/pinctrl/sunxi/pinctrl-sunxi.c | 156 +-
drivers/pinctrl/sunxi/pinctrl-sunxi.h | 109 +-
include/dt-bindings/pinctrl/r7s9210-pinctrl.h | 2 +-
include/dt-bindings/pinctrl/rzg2l-pinctrl.h | 2 +-
include/dt-bindings/pinctrl/rzv2m-pinctrl.h | 23 +
include/linux/firmware/xlnx-zynqmp.h | 5 +
include/linux/pinctrl/pinctrl.h | 20 +
88 files changed, 13369 insertions(+), 672 deletions(-)
create mode 100644
Documentation/devicetree/bindings/pinctrl/qcom,msm8909-tlmm.yaml
create mode 100644
Documentation/devicetree/bindings/pinctrl/qcom,sm6375-tlmm.yaml
create mode 100644
Documentation/devicetree/bindings/pinctrl/renesas,rzv2m-pinctrl.yaml
create mode 100644 arch/arm/boot/dts/imxrt1170-pinfunc.h
create mode 100644 drivers/pinctrl/intel/pinctrl-meteorlake.c
create mode 100644 drivers/pinctrl/qcom/pinctrl-msm8909.c
create mode 100644 drivers/pinctrl/qcom/pinctrl-sm6375.c
create mode 100644 drivers/pinctrl/renesas/pfc-r8a779g0.c
create mode 100644 drivers/pinctrl/renesas/pinctrl-rzv2m.c
create mode 100644 drivers/pinctrl/sunxi/pinctrl-sun20i-d1.c
create mode 100644 include/dt-bindings/pinctrl/rzv2m-pinctrl.h