[GIT PULL] Pin control changes for v6.5

From: Linus Walleij
Date: Thu Jun 29 2023 - 03:47:17 EST


Hi Linus,

here is the bulk of pin control changes for v6.5.

There is not much to say about it: it is smaller than usual
and it is all drivers.

Some lib/* functions are added, they come from Andy Shechenko
who maintains lib/* quite a lot.

Please pull it in!

Yours,
Linus Walleij

The following changes since commit ac9a78681b921877518763ba0e89202254349d1b:

Linux 6.4-rc1 (2023-05-07 13:34:35 -0700)

are available in the Git repository at:

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

for you to fetch changes up to 9f0648f13e34a01f2e1a7a0d5801988a7bca6988:

Merge tag 'intel-pinctrl-v6.5-1' of
git://git.kernel.org/pub/scm/linux/kernel/git/pinctrl/intel into devel
(2023-06-21 09:37:43 +0200)

----------------------------------------------------------------
Pin control changes for the v6.5 kernel cycle:

No core changes this time.

New drivers:

- Tegra234 support.

- Qualcomm IPQ5018 support.

- Intel Meteor Lake-S support.

- Qualcomm SDX75 subdriver.

- Qualcomm SPMI-based PM8953 support.

Improvements:

- Fix up support for GPIO3 on the AXP209.

- Push-pull drive configuration support for the AT91 PIO4.

- Fix misc non-urgent bugs in the AMD driver.

- Misc non-urgent improved error handling.

- Misc janitorial and minor improvements.

----------------------------------------------------------------
Andy Shevchenko (18):
pinctrl: baytrail: Unify style of error and debug messages
pinctrl: baytrail: Use BIT() in BYT_PULL_ASSIGN_* definitions
pinctrl: cherryview: Don't use IRQ core constanst for invalid IRQ
pinctrl: cherryview: Return correct value if pin in push-pull mode
pinctrl: merrifield: Fix open-drain pin mode configuration
pinctrl: merrifield: Use BUFCFG_PINMODE_GPIO in ->pin_dbg_show()
pinctrl: moorefield: Fix open-drain pin mode configuration
pinctrl: moorefield: Use BUFCFG_PINMODE_GPIO in ->pin_dbg_show()
pinctrl: intel: Add Intel Meteor Lake-S pin controller support
pinctrl: Duplicate user memory in one go in pinmux_select()
pinctrl: Relax user input size in pinmux_select()
lib/string_helpers: Add missing header files to MAINTAINERS database
lib/string_helpers: Split out string_choices.h
lib/string_choices: Add str_high_low() helper
pinctrl: baytrail: Use str_hi_lo() helper
pinctrl: lantiq: Remove unused of_gpio.h inclusion
pinctrl: spear: Remove unused of_gpio.h inclusion
pinctrl: cherryview: Drop goto label

Arnd Bergmann (2):
pinctrl: mlxbf3: remove broken Kconfig 'select'
pinctrl: tegra: avoid duplicate field initializers

Bartosz Golaszewski (1):
pinctrl: qcom: sa8775p: add the wakeirq map

Chester Lin (1):
pinctrl: s32: separate const device data from struct s32_pinctrl_soc_info

Christophe JAILLET (1):
pinctrl: bcm2835: Handle gpiochip_add_pin_range() errors

Claudiu Beznea (2):
pinctrl: microchip-sgpio: check return value of devm_kasprintf()
pinctrl: at91-pio4: check return value of devm_kasprintf()

Dan Carpenter (1):
pinctrl: at91: fix a couple NULL vs IS_ERR() checks

Jiasheng Jiang (1):
pinctrl: npcm7xx: Add missing check for ioremap

Jonathan McDowell (1):
pinctrl: axp209: Add support for GPIO3 on the AXP209

Kornel Dulęba (1):
pinctrl: amd: Detect and mask spurious interrupts

Krzysztof Kozlowski (14):
dt-bindings: pinctrl: qcom,ipq9574-tlmm: simplify with
unevaluatedProperties
dt-bindings: pinctrl: qcom,sc8280xp-tlmm: simplify with
unevaluatedProperties
dt-bindings: pinctrl: qcom,qcm2290-tlmm: simplify with
unevaluatedProperties
dt-bindings: pinctrl: qcom,sm7150-tlmm: simplify with
unevaluatedProperties
pinctrl: qcom: sc8180x: gracefully handle missing IO memory resource
pinctrl: qcom: qdf2xxx: drop ACPI_PTR
pinctrl: qcom: fix indentation in Kconfig
pinctrl: qcom: correct language typo (Technologies)
pinctrl: qcom: drop unneeded GPIOLIB dependency
pinctrl: qcom: mark true OF dependency - common MSM pinctrl code
pinctrl: qcom: allow true compile testing
pinctrl: qcom: organize main SoC drivers in new Kconfig.msm
pinctrl: qcom: organize audio drivers in menuconfig
dt-bindings: pinctrl: qcom,sdx65-tlmm: add pcie_clkreq function

Linus Walleij (3):
Merge tag 'renesas-pinctrl-for-v6.5-tag1' of
git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-drivers
into devel
Merge tag 'qcom-pinctrl-6.5' of
https://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux-dt into
devel
Merge tag 'intel-pinctrl-v6.5-1' of
git://git.kernel.org/pub/scm/linux/kernel/git/pinctrl/intel into devel

Lizhe (1):
pinctrl: microchip: Remove redundant clearing of IRQ_TYPE_SENSE_MASK

Lu Hongfei (1):
pinctrl: nxp: Fix resource leaks in for_each_child_of_node() loops

Luca Weiss (2):
dt-bindings: pinctrl: qcom,pmic-gpio: add PM8953
pinctrl: qcom: spmi-gpio: Add PM8953 support

Marek Vasut (1):
pinctrl: renesas: Fix spaces followed by tabs

Mario Limonciello (3):
pinctrl: amd: Detect internal GPIO0 debounce handling
pinctrl: amd: Fix mistake in handling clearing pins at startup
pinctrl: amd: Revert "pinctrl: amd: disable and mask interrupts on probe"

Nishanth Menon (1):
dt-bindings: pinctrl: Drop k3

Prathamesh Shete (3):
dt-bindings: pinctrl: Document Tegra234 pin controllers
pinctrl: tegra: Add Tegra234 pinmux driver
gpio: tegra186: Check PMC driver status before any request

Raag Jadav (5):
pinctrl: intel: refine ->set_mux() hook
pinctrl: intel: refine ->irq_set_type() hook
pinctrl: baytrail: reduce scope of spinlock in ->dbg_show() hook
pinctrl: baytrail: add warning for BYT_VAL_REG retrieval failure
pinctrl: baytrail: invert if condition

Rohit Agarwal (5):
pinctrl: qcom: Remove the msm_function struct
pinctrl: qcom: Refactor generic qcom pinctrl driver
dt-bindings: pinctrl: qcom: Add SDX75 pinctrl devicetree compatible
MAINTAINERS: Update the entry for pinctrl maintainers
pinctrl: qcom: Add SDX75 pincontrol driver

Ryan Wanner (2):
dt-bindings: pinctrl: at91-pio4: Add push-pull support
pinctrl: at91-pio4: Enable Push-Pull configuration

Sricharan Ramabadhran (2):
dt-bindings: pinctrl: qcom: Add support for ipq5018
pinctrl: qcom: Add IPQ5018 pinctrl driver

Thierry Reding (2):
pinctrl: tegra: Duplicate pinmux functions table
pinctrl: tegra: Consistently refer to SoC data

Uwe Kleine-König (1):
pinctrl: Switch i2c drivers back to use .probe()

Wells Lu (2):
pinctrl: sunplus: Add check for kmalloc
pinctrl:sunplus: Add check for kmalloc

Xiaolei Wang (1):
pinctrl: freescale: Fix a memory out of bounds when num_configs is 1

.../bindings/pinctrl/atmel,at91-pio4-pinctrl.txt | 3 +-
.../pinctrl/nvidia,tegra234-pinmux-aon.yaml | 78 +
.../pinctrl/nvidia,tegra234-pinmux-common.yaml | 66 +
.../bindings/pinctrl/nvidia,tegra234-pinmux.yaml | 139 ++
.../bindings/pinctrl/qcom,ipq5018-tlmm.yaml | 127 ++
.../bindings/pinctrl/qcom,ipq9574-tlmm.yaml | 11 +-
.../bindings/pinctrl/qcom,pmic-gpio.yaml | 3 +
.../bindings/pinctrl/qcom,qcm2290-tlmm.yaml | 11 +-
.../bindings/pinctrl/qcom,sc8280xp-tlmm.yaml | 12 +-
.../bindings/pinctrl/qcom,sdx65-tlmm.yaml | 2 +-
.../bindings/pinctrl/qcom,sdx75-tlmm.yaml | 137 ++
.../bindings/pinctrl/qcom,sm7150-tlmm.yaml | 11 +-
MAINTAINERS | 6 +-
drivers/gpio/gpio-tegra186.c | 14 +-
drivers/pinctrl/Kconfig | 1 -
drivers/pinctrl/Makefile | 2 +-
drivers/pinctrl/bcm/pinctrl-bcm2835.c | 6 +-
drivers/pinctrl/freescale/pinctrl-scu.c | 3 +-
drivers/pinctrl/intel/pinctrl-baytrail.c | 104 +-
drivers/pinctrl/intel/pinctrl-cherryview.c | 26 +-
drivers/pinctrl/intel/pinctrl-intel.c | 54 +-
drivers/pinctrl/intel/pinctrl-merrifield.c | 16 +-
drivers/pinctrl/intel/pinctrl-meteorlake.c | 212 ++-
drivers/pinctrl/intel/pinctrl-moorefield.c | 16 +-
drivers/pinctrl/nuvoton/pinctrl-npcm7xx.c | 2 +
drivers/pinctrl/nxp/pinctrl-s32.h | 14 +-
drivers/pinctrl/nxp/pinctrl-s32cc.c | 42 +-
drivers/pinctrl/nxp/pinctrl-s32g2.c | 14 +-
drivers/pinctrl/pinctrl-amd.c | 50 +-
drivers/pinctrl/pinctrl-amd.h | 1 +
drivers/pinctrl/pinctrl-at91-pio4.c | 17 +-
drivers/pinctrl/pinctrl-at91.c | 8 +-
drivers/pinctrl/pinctrl-axp209.c | 42 +
drivers/pinctrl/pinctrl-cy8c95x0.c | 2 +-
drivers/pinctrl/pinctrl-falcon.c | 1 -
drivers/pinctrl/pinctrl-mcp23s08_i2c.c | 2 +-
drivers/pinctrl/pinctrl-microchip-sgpio.c | 5 +-
drivers/pinctrl/pinctrl-sx150x.c | 2 +-
drivers/pinctrl/pinctrl-xway.c | 2 +-
drivers/pinctrl/pinmux.c | 15 +-
drivers/pinctrl/qcom/Kconfig | 463 +----
drivers/pinctrl/qcom/Kconfig.msm | 369 ++++
drivers/pinctrl/qcom/Makefile | 4 +-
drivers/pinctrl/qcom/pinctrl-apq8064.c | 104 +-
drivers/pinctrl/qcom/pinctrl-apq8084.c | 264 ++-
drivers/pinctrl/qcom/pinctrl-ipq4019.c | 104 +-
drivers/pinctrl/qcom/pinctrl-ipq5018.c | 783 ++++++++
drivers/pinctrl/qcom/pinctrl-ipq5332.c | 206 +-
drivers/pinctrl/qcom/pinctrl-ipq6018.c | 260 ++-
drivers/pinctrl/qcom/pinctrl-ipq8064.c | 114 +-
drivers/pinctrl/qcom/pinctrl-ipq8074.c | 240 ++-
drivers/pinctrl/qcom/pinctrl-ipq9574.c | 176 +-
drivers/pinctrl/qcom/pinctrl-mdm9607.c | 276 ++-
drivers/pinctrl/qcom/pinctrl-mdm9615.c | 90 +-
drivers/pinctrl/qcom/pinctrl-msm.c | 13 +-
drivers/pinctrl/qcom/pinctrl-msm.h | 42 +-
drivers/pinctrl/qcom/pinctrl-msm8226.c | 156 +-
drivers/pinctrl/qcom/pinctrl-msm8660.c | 252 ++-
drivers/pinctrl/qcom/pinctrl-msm8909.c | 268 ++-
drivers/pinctrl/qcom/pinctrl-msm8916.c | 556 +++---
drivers/pinctrl/qcom/pinctrl-msm8953.c | 424 +++--
drivers/pinctrl/qcom/pinctrl-msm8960.c | 464 +++--
drivers/pinctrl/qcom/pinctrl-msm8976.c | 212 +--
drivers/pinctrl/qcom/pinctrl-msm8994.c | 564 +++---
drivers/pinctrl/qcom/pinctrl-msm8996.c | 508 +++--
drivers/pinctrl/qcom/pinctrl-msm8998.c | 380 ++--
drivers/pinctrl/qcom/pinctrl-msm8x74.c | 474 +++--
drivers/pinctrl/qcom/pinctrl-qcm2290.c | 230 ++-
drivers/pinctrl/qcom/pinctrl-qcs404.c | 388 ++--
drivers/pinctrl/qcom/pinctrl-qdf2xxx.c | 8 +-
drivers/pinctrl/qcom/pinctrl-qdu1000.c | 249 ++-
drivers/pinctrl/qcom/pinctrl-sa8775p.c | 327 ++--
drivers/pinctrl/qcom/pinctrl-sc7180.c | 254 ++-
drivers/pinctrl/qcom/pinctrl-sc7280.c | 322 ++--
drivers/pinctrl/qcom/pinctrl-sc8180x.c | 292 ++-
drivers/pinctrl/qcom/pinctrl-sc8280xp.c | 358 ++--
drivers/pinctrl/qcom/pinctrl-sdm660.c | 387 ++--
drivers/pinctrl/qcom/pinctrl-sdm670.c | 284 ++-
drivers/pinctrl/qcom/pinctrl-sdm845.c | 286 ++-
drivers/pinctrl/qcom/pinctrl-sdx55.c | 190 +-
drivers/pinctrl/qcom/pinctrl-sdx65.c | 194 +-
drivers/pinctrl/qcom/pinctrl-sdx75.c | 1144 ++++++++++++
drivers/pinctrl/qcom/pinctrl-sm6115.c | 162 +-
drivers/pinctrl/qcom/pinctrl-sm6125.c | 282 ++-
drivers/pinctrl/qcom/pinctrl-sm6350.c | 296 ++-
drivers/pinctrl/qcom/pinctrl-sm6375.c | 358 ++--
drivers/pinctrl/qcom/pinctrl-sm7150.c | 247 ++-
drivers/pinctrl/qcom/pinctrl-sm8150.c | 286 ++-
drivers/pinctrl/qcom/pinctrl-sm8250.c | 258 ++-
drivers/pinctrl/qcom/pinctrl-sm8350.c | 298 ++-
drivers/pinctrl/qcom/pinctrl-sm8450.c | 300 ++-
drivers/pinctrl/qcom/pinctrl-sm8550.c | 320 ++--
drivers/pinctrl/qcom/pinctrl-spmi-gpio.c | 2 +
drivers/pinctrl/renesas/pfc-r8a77970.c | 2 +-
drivers/pinctrl/renesas/pfc-r8a77980.c | 6 +-
drivers/pinctrl/spear/pinctrl-spear.c | 1 -
drivers/pinctrl/sunplus/sppctl.c | 23 +-
drivers/pinctrl/tegra/Kconfig | 4 +
drivers/pinctrl/tegra/Makefile | 1 +
drivers/pinctrl/tegra/pinctrl-tegra.c | 28 +-
drivers/pinctrl/tegra/pinctrl-tegra.h | 3 +-
drivers/pinctrl/tegra/pinctrl-tegra114.c | 7 +-
drivers/pinctrl/tegra/pinctrl-tegra124.c | 7 +-
drivers/pinctrl/tegra/pinctrl-tegra194.c | 7 +-
drivers/pinctrl/tegra/pinctrl-tegra20.c | 7 +-
drivers/pinctrl/tegra/pinctrl-tegra210.c | 7 +-
drivers/pinctrl/tegra/pinctrl-tegra234.c | 1960 ++++++++++++++++++++
drivers/pinctrl/tegra/pinctrl-tegra30.c | 7 +-
drivers/soc/tegra/Kconfig | 1 +
include/dt-bindings/pinctrl/k3.h | 60 -
include/linux/string_choices.h | 44 +
include/linux/string_helpers.h | 26 +-
112 files changed, 11602 insertions(+), 7366 deletions(-)
create mode 100644
Documentation/devicetree/bindings/pinctrl/nvidia,tegra234-pinmux-aon.yaml
create mode 100644
Documentation/devicetree/bindings/pinctrl/nvidia,tegra234-pinmux-common.yaml
create mode 100644
Documentation/devicetree/bindings/pinctrl/nvidia,tegra234-pinmux.yaml
create mode 100644
Documentation/devicetree/bindings/pinctrl/qcom,ipq5018-tlmm.yaml
create mode 100644
Documentation/devicetree/bindings/pinctrl/qcom,sdx75-tlmm.yaml
create mode 100644 drivers/pinctrl/qcom/Kconfig.msm
create mode 100644 drivers/pinctrl/qcom/pinctrl-ipq5018.c
create mode 100644 drivers/pinctrl/qcom/pinctrl-sdx75.c
create mode 100644 drivers/pinctrl/tegra/pinctrl-tegra234.c
delete mode 100644 include/dt-bindings/pinctrl/k3.h
create mode 100644 include/linux/string_choices.h