projects/linux·commit 962ad087

Merge tag 'pinctrl-v6.12-1' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl

962ad087 · Linus Torvalds <[email protected]> · 2024-09-23 13:15:23 -07:00

Pull pin control updates from Linus Walleij:
 "Core changes:

   - Add support for "input-schmitt-microvolt" property, as used in the
     Sophgo SoC

  New drivers:

   - Mobileye EyeQ5 pin controller, I think this is an automotive SoC

   - Rockchip rk3576 pin control support

   - Sophgo CV1800 series pin controllers: CV1800B, CV1812H and SG2000

  Improvements:

   - Gradual improvements to Renesas, Samsung, Qualcomm, Nuvoton and a
     few other drivers"

* tag 'pinctrl-v6.12-1' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl: (67 commits)
  pinctrl: intel: Constify struct intel_pinctrl parameter
  pinctrl: Remove redundant null pointer checks in pinctrl_remove_device_debugfs()
  pinctrl: baytrail: Drop duplicate return statement
  pinctrl: intel: Inline intel_gpio_community_irq_handler()
  dt-bindings: pinctrl: qcom: add missing type to GPIO hogs
  pinctrl: madera: Simplify with dev_err_probe()
  pinctrl: k210: Use devm_clk_get_enabled() helpers
  pinctrl: Join split messages and remove double whitespace
  pinctrl: renesas: rzg2l: Move pinconf_to_config_argument() call outside of switch cases
  pinctrl: renesas: rzg2l: Introduce single macro for digital noise filter configuration
  pinctrl: renesas: rzg2l: Replace of_node_to_fwnode() with more suitable API
  pinctrl: mvebu: Fix devinit_dove_pinctrl_probe function
  pinctrl: sunxi: Use devm_clk_get_enabled() helpers
  pinctrl: sophgo: cv18xx: fix missed __iomem type identifier
  pinctrl: stmfx: Use string_choices API instead of ternary operator
  pinctrl: nomadik: Use kmemdup_array instead of kmemdup for multiple allocation
  pinctrl: intel: Introduce for_each_intel_gpio_group() helper et al.
  pinctrl: intel: Constify intel_get_community() returned object
  pinctrl: intel: Implement high impedance support
  pinctrl: intel: Add __intel_gpio_get_direction() helper
  ...
Commit
962ad08780a5bfb3240bc793e565181eacfceafb
Parents
5f153b63 · 264c1311

Merge commit. Changes below are compared with the first parent: 5f153b63.

Changes

84 files changed · +6001 −1274

FileStatusAddDelContent
Documentation/devicetree/bindings/pinctrl/mobileye,eyeq5-pinctrl.yamldeleted+0−242View before deletion
Documentation/devicetree/bindings/pinctrl/nuvoton,npcm845-pinctrl.yamlmodified+34−36View file
Documentation/devicetree/bindings/pinctrl/pincfg-node.yamlmodified+3−0View file
Documentation/devicetree/bindings/pinctrl/qcom,apq8064-pinctrl.txtdeleted+0−95View before deletion
Documentation/devicetree/bindings/pinctrl/qcom,apq8064-pinctrl.yamladded+110−0View file
Documentation/devicetree/bindings/pinctrl/qcom,apq8084-pinctrl.txtdeleted+0−188View before deletion
Documentation/devicetree/bindings/pinctrl/qcom,apq8084-pinctrl.yamladded+129−0View file
Documentation/devicetree/bindings/pinctrl/qcom,ipq4019-pinctrl.txtdeleted+0−85View before deletion
Documentation/devicetree/bindings/pinctrl/qcom,ipq4019-pinctrl.yamladded+103−0View file
Documentation/devicetree/bindings/pinctrl/qcom,ipq8064-pinctrl.txtdeleted+0−101View before deletion
Documentation/devicetree/bindings/pinctrl/qcom,ipq8064-pinctrl.yamladded+108−0View file
Documentation/devicetree/bindings/pinctrl/qcom,pmic-gpio.yamlmodified+1−0View file
Documentation/devicetree/bindings/pinctrl/qcom,sdm845-pinctrl.yamlmodified+1−0View file
Documentation/devicetree/bindings/pinctrl/renesas,pfc.yamlmodified+1−0View file
Documentation/devicetree/bindings/pinctrl/rockchip,pinctrl.yamlmodified+1−0View file
Documentation/devicetree/bindings/pinctrl/sophgo,cv1800-pinctrl.yamladded+122−0View file
drivers/pinctrl/Kconfigmodified+16−0View file
drivers/pinctrl/Makefilemodified+2−0View file
drivers/pinctrl/bcm/pinctrl-bcm2835.cmodified+1−0View file
drivers/pinctrl/cirrus/pinctrl-madera-core.cmodified+3−6View file
drivers/pinctrl/core.cmodified+1−1View file
drivers/pinctrl/freescale/pinctrl-imx-scmi.cmodified+1−1View file
drivers/pinctrl/freescale/pinctrl-imx.cmodified+3−4View file
drivers/pinctrl/freescale/pinctrl-imx8mq.cmodified+1−1View file
drivers/pinctrl/intel/pinctrl-baytrail.cmodified+3−4View file
drivers/pinctrl/intel/pinctrl-intel.cmodified+183−141View file
drivers/pinctrl/intel/pinctrl-intel.hmodified+2−1View file
drivers/pinctrl/intel/pinctrl-lynxpoint.cmodified+1−1View file
drivers/pinctrl/mediatek/pinctrl-paris.cmodified+2−5View file
drivers/pinctrl/meson/pinctrl-amlogic-c3.cmodified+6−6View file
drivers/pinctrl/meson/pinctrl-amlogic-t7.cmodified+6−6View file
drivers/pinctrl/meson/pinctrl-meson-a1.cmodified+6−6View file
drivers/pinctrl/meson/pinctrl-meson-axg-pmx.cmodified+6−6View file
drivers/pinctrl/meson/pinctrl-meson-axg-pmx.hmodified+1−1View file
drivers/pinctrl/meson/pinctrl-meson-axg.cmodified+12−12View file
drivers/pinctrl/meson/pinctrl-meson-g12a.cmodified+12−12View file
drivers/pinctrl/meson/pinctrl-meson-gxbb.cmodified+8−8View file
drivers/pinctrl/meson/pinctrl-meson-gxl.cmodified+8−8View file
drivers/pinctrl/meson/pinctrl-meson-s4.cmodified+6−6View file
drivers/pinctrl/meson/pinctrl-meson.cmodified+13−12View file
drivers/pinctrl/meson/pinctrl-meson.hmodified+4−4View file
drivers/pinctrl/meson/pinctrl-meson8-pmx.cmodified+3−3View file
drivers/pinctrl/meson/pinctrl-meson8.cmodified+8−8View file
drivers/pinctrl/meson/pinctrl-meson8b.cmodified+8−8View file
drivers/pinctrl/mvebu/pinctrl-dove.cmodified+29−13View file
drivers/pinctrl/nomadik/pinctrl-abx500.cmodified+1−2View file
drivers/pinctrl/nomadik/pinctrl-nomadik.cmodified+1−2View file
drivers/pinctrl/nuvoton/pinctrl-npcm8xx.cmodified+31−33View file
drivers/pinctrl/nxp/pinctrl-s32cc.cmodified+35−16View file
drivers/pinctrl/pinconf-generic.cmodified+2−0View file
drivers/pinctrl/pinctrl-eyeq5.cadded+575−0View file
drivers/pinctrl/pinctrl-k210.cmodified+8−27View file
drivers/pinctrl/pinctrl-rockchip.cmodified+207−0View file
drivers/pinctrl/pinctrl-rockchip.hmodified+1−0View file
drivers/pinctrl/pinctrl-single.cmodified+2−1View file
drivers/pinctrl/pinctrl-stmfx.cmodified+3−2View file
drivers/pinctrl/pinctrl-utils.cmodified+2−2View file
drivers/pinctrl/pinctrl-zynq.cmodified+1−0View file
drivers/pinctrl/pinmux.cmodified+2−5View file
drivers/pinctrl/realtek/pinctrl-rtd.cmodified+1−1View file
drivers/pinctrl/renesas/pinctrl-rzg2l.cmodified+45−72View file
drivers/pinctrl/renesas/pinctrl-rzv2m.cmodified+1−2View file
drivers/pinctrl/renesas/pinctrl.cmodified+1−2View file
drivers/pinctrl/samsung/pinctrl-exynos-arm.cmodified+14−0View file
drivers/pinctrl/samsung/pinctrl-exynos.cmodified+4−12View file
drivers/pinctrl/samsung/pinctrl-s3c64xx.cmodified+14−0View file
drivers/pinctrl/samsung/pinctrl-samsung.cmodified+88−20View file
drivers/pinctrl/samsung/pinctrl-samsung.hmodified+21−0View file
drivers/pinctrl/sophgo/Kconfigadded+54−0View file
drivers/pinctrl/sophgo/Makefileadded+7−0View file
drivers/pinctrl/sophgo/pinctrl-cv1800b.cadded+462−0View file
drivers/pinctrl/sophgo/pinctrl-cv1812h.cadded+771−0View file
drivers/pinctrl/sophgo/pinctrl-cv18xx.cadded+765−0View file
drivers/pinctrl/sophgo/pinctrl-cv18xx.hadded+155−0View file
drivers/pinctrl/sophgo/pinctrl-sg2000.cadded+771−0View file
drivers/pinctrl/sophgo/pinctrl-sg2002.cadded+542−0View file
drivers/pinctrl/sunxi/pinctrl-sunxi.cmodified+4−10View file
drivers/pinctrl/ti/pinctrl-ti-iodelay.cmodified+24−34View file
include/dt-bindings/pinctrl/pinctrl-cv1800b.hadded+63−0View file
include/dt-bindings/pinctrl/pinctrl-cv1812h.hadded+127−0View file
include/dt-bindings/pinctrl/pinctrl-cv18xx.hadded+19−0View file
include/dt-bindings/pinctrl/pinctrl-sg2000.hadded+127−0View file
include/dt-bindings/pinctrl/pinctrl-sg2002.hadded+79−0View file
include/linux/pinctrl/pinconf-generic.hmodified+3−0View file

Only the first 600 diff lines are shown. Download the complete patch.

Documentation/devicetree/bindings/pinctrl/mobileye,eyeq5-pinctrl.yaml

View before deletion
diff --git a/Documentation/devicetree/bindings/pinctrl/mobileye,eyeq5-pinctrl.yaml b/Documentation/devicetree/bindings/pinctrl/mobileye,eyeq5-pinctrl.yaml
deleted file mode 100644
index 5f00604..0000000
--- a/Documentation/devicetree/bindings/pinctrl/mobileye,eyeq5-pinctrl.yaml
+++ /dev/null
@@ -1,242 +0,0 @@
-# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
-%YAML 1.2
----
-$id: http://devicetree.org/schemas/pinctrl/mobileye,eyeq5-pinctrl.yaml#
-$schema: http://devicetree.org/meta-schemas/core.yaml#
-
-title: Mobileye EyeQ5 pin controller
-
-description: >
- The EyeQ5 pin controller handles the two pin banks of the system. It belongs
- to a system-controller block called OLB.
-
- Pin control is about bias (pull-down, pull-up), drive strength and muxing. Pin
- muxing supports two functions for each pin: first is GPIO, second is
- pin-dependent.
-
- Pins and groups are bijective.
-
-maintainers:
- - Grégory Clement <[email protected]>
- - Théo Lebrun <[email protected]>
- - Vladimir Kondratiev <[email protected]>
-
-$ref: pinctrl.yaml#
-
-properties:
- compatible:
- enum:
- - mobileye,eyeq5-pinctrl
-
- reg:
- maxItems: 1
-
-patternProperties:
- "-pins?$":
- type: object
- description: Pin muxing configuration.
- $ref: pinmux-node.yaml#
- additionalProperties: false
- properties:
- pins: true
- function:
- enum: [gpio,
- # Bank A
- timer0, timer1, timer2, timer5, uart0, uart1, can0, can1, spi0,
- spi1, refclk0,
- # Bank B
- timer3, timer4, timer6, uart2, can2, spi2, spi3, mclk0]
- bias-disable: true
- bias-pull-down: true
- bias-pull-up: true
- drive-strength: true
- required:
- - pins
- - function
- allOf:
- - if:
- properties:
- function:
- const: gpio
- then:
- properties:
- pins:
- items: # PA0 - PA28, PB0 - PB22
- pattern: '^(P(A|B)1?[0-9]|PA2[0-8]|PB2[0-2])$'
- - if:
- properties:
- function:
- const: timer0
- then:
- properties:
- pins:
- items:
- enum: [PA0, PA1]
- - if:
- properties:
- function:
- const: timer1
- then:
- properties:
- pins:
- items:
- enum: [PA2, PA3]
- - if:
- properties:
- function:
- const: timer2
- then:
- properties:
- pins:
- items:
- enum: [PA4, PA5]
- - if:
- properties:
- function:
- const: timer5
- then:
- properties:
- pins:
- items:
- enum: [PA6, PA7, PA8, PA9]
- - if:
- properties:
- function:
- const: uart0
- then:
- properties:
- pins:
- items:
- enum: [PA10, PA11]
- - if:
- properties:
- function:
- const: uart1
- then:
- properties:
- pins:
- items:
- enum: [PA12, PA13]
- - if:
- properties:
- function:
- const: can0
- then:
- properties:
- pins:
- items:
- enum: [PA14, PA15]
- - if:
- properties:
- function:
- const: can1
- then:
- properties:
- pins:
- items:
- enum: [PA16, PA17]
- - if:
- properties:
- function:
- const: spi0
- then:
- properties:
- pins:
- items:
- enum: [PA18, PA19, PA20, PA21, PA22]
- - if:
- properties:
- function:
- const: spi1
- then:
- properties:
- pins:
- items:
- enum: [PA23, PA24, PA25, PA26, PA27]
- - if:
- properties:
- function:
- const: refclk0
- then:
- properties:
- pins:
- items:
- enum: [PA28]
- - if:
- properties:
- function:
- const: timer3
- then:
- properties:
- pins:
- items:
- enum: [PB0, PB1]
- - if:
- properties:
- function:
- const: timer4
- then:
- properties:
- pins:
- items:
- enum: [PB2, PB3]
- - if:
- properties:
- function:
- const: timer6
- then:
- properties:
- pins:
- items:
- enum: [PB4, PB5, PB6, PB7]
- - if:
- properties:
- function:
- const: uart2
- then:
- properties:
- pins:
- items:
- enum: [PB8, PB9]
- - if:
- properties:
- function:
- const: can2
- then:
- properties:
- pins:
- items:
- enum: [PB10, PB11]
- - if:
- properties:
- function:
- const: spi2
- then:
- properties:
- pins:
- items:
- enum: [PB12, PB13, PB14, PB15, PB16]
- - if:
- properties:
- function:
- const: spi3
- then:
- properties:
- pins:
- items:
- enum: [PB17, PB18, PB19, PB20, PB21]
- - if:
- properties:
- function:
- const: mclk0
- then:
- properties:
- pins:
- items:
- enum: [PB22]
-
-required:
- - compatible
- - reg
-
-additionalProperties: false

Documentation/devicetree/bindings/pinctrl/nuvoton,npcm845-pinctrl.yaml

View file
diff --git a/Documentation/devicetree/bindings/pinctrl/nuvoton,npcm845-pinctrl.yaml b/Documentation/devicetree/bindings/pinctrl/nuvoton,npcm845-pinctrl.yaml
index 814b959..8cd1f44 100644
--- a/Documentation/devicetree/bindings/pinctrl/nuvoton,npcm845-pinctrl.yaml
+++ b/Documentation/devicetree/bindings/pinctrl/nuvoton,npcm845-pinctrl.yaml
@@ -71,51 +71,49 @@ patternProperties:
One or more groups of pins to mux to a certain function
items:
enum: [ iox1, iox2, smb1d, smb2d, lkgpo1, lkgpo2, ioxh, gspi,
- smb5b, smb5c, lkgpo0, pspi, jm1, jm2, smb4den, smb4b,
- smb4c, smb15, smb16, smb17, smb18, smb19, smb20, smb21,
- smb22, smb23, smb23b, smb4d, smb14, smb5, smb4, smb3,
- spi0cs1, spi0cs2, spi0cs3, spi1cs0, spi1cs1, spi1cs2,
- spi1cs3, spi1cs23, smb3c, smb3b, bmcuart0a, uart1, jtag2,
- bmcuart1, uart2, sg1mdio, bmcuart0b, r1err, r1md, r1oen,
- r2oen, rmii3, r3oen, smb3d, fanin0, fanin1, fanin2, fanin3,
- fanin4, fanin5, fanin6, fanin7, fanin8, fanin9, fanin10,
- fanin11, fanin12, fanin13, fanin14, fanin15, pwm0, pwm1, pwm2,
- pwm3, r2, r2err, r2md, r3rxer, ga20kbc, smb5d, lpc, espi, rg2,
- ddr, i3c0, i3c1, i3c2, i3c3, i3c4, i3c5, smb0, smb1, smb2,
- smb2c, smb2b, smb1c, smb1b, smb8, smb9, smb10, smb11, sd1,
- sd1pwr, pwm4, pwm5, pwm6, pwm7, pwm8, pwm9, pwm10, pwm11,
- mmc8, mmc, mmcwp, mmccd, mmcrst, clkout, serirq, lpcclk,
- scipme, smi, smb6, smb6b, smb6c, smb6d, smb7, smb7b, smb7c,
- smb7d, spi1, faninx, r1, spi3, spi3cs1, spi3quad, spi3cs2,
- spi3cs3, nprd_smi, smb0b, smb0c, smb0den, smb0d, ddc, rg2mdio,
- wdog1, wdog2, smb12, smb13, spix, spixcs1, clkreq, hgpio0,
- hgpio1, hgpio2, hgpio3, hgpio4, hgpio5, hgpio6, hgpio7, bu4,
- bu4b, bu5, bu5b, bu6, gpo187 ]
+ smb5b, smb5c, lkgpo0, pspi, jm1, jm2, smb4b, smb4c, smb15,
+ smb16, smb17, smb18, smb19, smb20, smb21, smb22, smb23,
+ smb23b, smb4d, smb14, smb5, smb4, smb3, spi0cs1, spi0cs2,
+ spi0cs3, spi1cs0, spi1cs1, spi1cs2, spi1cs3, spi1cs23, smb3c,
+ smb3b, bmcuart0a, uart1, jtag2, bmcuart1, uart2, sg1mdio,
+ bmcuart0b, r1err, r1md, r1oen, r2oen, rmii3, r3oen, smb3d,
+ fanin0, fanin1, fanin2, fanin3, fanin4, fanin5, fanin6,
+ fanin7, fanin8, fanin9, fanin10, fanin11, fanin12, fanin13,
+ fanin14, fanin15, pwm0, pwm1, pwm2, pwm3, r2, r2err, r2md,
+ r3rxer, ga20kbc, smb5d, lpc, espi, rg2, ddr, i3c0, i3c1,
+ i3c2, i3c3, i3c4, i3c5, smb0, smb1, smb2, smb2c, smb2b, smb1c,
+ smb1b, smb8, smb9, smb10, smb11, sd1, sd1pwr, pwm4, pwm5,
+ pwm6, pwm7, pwm8, pwm9, pwm10, pwm11, mmc8, mmc, mmcwp, mmccd,
+ mmcrst, clkout, serirq, scipme, smi, smb6, smb6b, smb6c,
+ smb6d, smb7, smb7b, smb7c, smb7d, spi1, faninx, r1, spi3,
+ spi3cs1, spi3quad, spi3cs2, spi3cs3, nprd_smi, smb0b, smb0c,
+ smb0den, smb0d, ddc, rg2mdio, wdog1, wdog2, smb12, smb13,
+ spix, spixcs1, clkreq, hgpio0, hgpio1, hgpio2, hgpio3, hgpio4,
+ hgpio5, hgpio6, hgpio7, bu4, bu4b, bu5, bu5b, bu6, gpo187 ]
function:
description:
The function that a group of pins is muxed to
- enum: [ iox1, iox2, smb1d, smb2d, lkgpo1, lkgpo2, ioxh, gspi,
- smb5b, smb5c, lkgpo0, pspi, jm1, jm2, smb4den, smb4b,
- smb4c, smb15, smb16, smb17, smb18, smb19, smb20, smb21,
- smb22, smb23, smb23b, smb4d, smb14, smb5, smb4, smb3,
- spi0cs1, spi0cs2, spi0cs3, spi1cs0, spi1cs1, spi1cs2,
- spi1cs3, spi1cs23, smb3c, smb3b, bmcuart0a, uart1, jtag2,
- bmcuart1, uart2, sg1mdio, bmcuart0b, r1err, r1md, r1oen,
- r2oen, rmii3, r3oen, smb3d, fanin0, fanin1, fanin2, fanin3,
- fanin4, fanin5, fanin6, fanin7, fanin8, fanin9, fanin10,
+ enum: [ iox1, iox2, smb1d, smb2d, lkgpo1, lkgpo2, ioxh, gspi, smb5b,
+ smb5c, lkgpo0, pspi, jm1, jm2, smb4b, smb4c, smb15, smb16,
+ smb17, smb18, smb19, smb20, smb21, smb22, smb23, smb23b, smb4d,
+ smb14, smb5, smb4, smb3, spi0cs1, spi0cs2, spi0cs3, spi1cs0,
+ spi1cs1, spi1cs2, spi1cs3, spi1cs23, smb3c, smb3b, bmcuart0a,
+ uart1, jtag2, bmcuart1, uart2, sg1mdio, bmcuart0b, r1err, r1md,
+ r1oen, r2oen, rmii3, r3oen, smb3d, fanin0, fanin1, fanin2,
+ fanin3, fanin4, fanin5, fanin6, fanin7, fanin8, fanin9, fanin10,
fanin11, fanin12, fanin13, fanin14, fanin15, pwm0, pwm1, pwm2,
pwm3, r2, r2err, r2md, r3rxer, ga20kbc, smb5d, lpc, espi, rg2,
ddr, i3c0, i3c1, i3c2, i3c3, i3c4, i3c5, smb0, smb1, smb2,
smb2c, smb2b, smb1c, smb1b, smb8, smb9, smb10, smb11, sd1,
sd1pwr, pwm4, pwm5, pwm6, pwm7, pwm8, pwm9, pwm10, pwm11,
- mmc8, mmc, mmcwp, mmccd, mmcrst, clkout, serirq, lpcclk,
- scipme, smi, smb6, smb6b, smb6c, smb6d, smb7, smb7b, smb7c,
- smb7d, spi1, faninx, r1, spi3, spi3cs1, spi3quad, spi3cs2,
- spi3cs3, nprd_smi, smb0b, smb0c, smb0den, smb0d, ddc, rg2mdio,
- wdog1, wdog2, smb12, smb13, spix, spixcs1, clkreq, hgpio0,
- hgpio1, hgpio2, hgpio3, hgpio4, hgpio5, hgpio6, hgpio7, bu4,
- bu4b, bu5, bu5b, bu6, gpo187 ]
+ mmc8, mmc, mmcwp, mmccd, mmcrst, clkout, serirq, scipme, smi,
+ smb6, smb6b, smb6c, smb6d, smb7, smb7b, smb7c, smb7d, spi1,
+ faninx, r1, spi3, spi3cs1, spi3quad, spi3cs2, spi3cs3, nprd_smi,
+ smb0b, smb0c, smb0den, smb0d, ddc, rg2mdio, wdog1, wdog2,
+ smb12, smb13, spix, spixcs1, clkreq, hgpio0, hgpio1, hgpio2,
+ hgpio3, hgpio4, hgpio5, hgpio6, hgpio7, bu4, bu4b, bu5, bu5b,
+ bu6, gpo187 ]
dependencies:
groups: [ function ]

Documentation/devicetree/bindings/pinctrl/pincfg-node.yaml

View file
diff --git a/Documentation/devicetree/bindings/pinctrl/pincfg-node.yaml b/Documentation/devicetree/bindings/pinctrl/pincfg-node.yaml
index d0af21a..cbfcf21 100644
--- a/Documentation/devicetree/bindings/pinctrl/pincfg-node.yaml
+++ b/Documentation/devicetree/bindings/pinctrl/pincfg-node.yaml
@@ -96,6 +96,9 @@ properties:
type: boolean
description: disable schmitt-trigger mode
+ input-schmitt-microvolt:
+ description: threshold strength for schmitt-trigger
+
input-debounce:
$ref: /schemas/types.yaml#/definitions/uint32-array
description: Takes the debounce time in usec as argument or 0 to disable

Documentation/devicetree/bindings/pinctrl/qcom,apq8064-pinctrl.txt

View before deletion
diff --git a/Documentation/devicetree/bindings/pinctrl/qcom,apq8064-pinctrl.txt b/Documentation/devicetree/bindings/pinctrl/qcom,apq8064-pinctrl.txt
deleted file mode 100644
index 4e90ddd..0000000
--- a/Documentation/devicetree/bindings/pinctrl/qcom,apq8064-pinctrl.txt
+++ /dev/null
@@ -1,95 +0,0 @@
-Qualcomm APQ8064 TLMM block
-
-Required properties:
-- compatible: "qcom,apq8064-pinctrl"
-- reg: Should be the base address and length of the TLMM block.
-- interrupts: Should be the parent IRQ of the TLMM block.
-- interrupt-controller: Marks the device node as an interrupt controller.
-- #interrupt-cells: Should be two.
-- gpio-controller: Marks the device node as a GPIO controller.
-- #gpio-cells : Should be two.
- The first cell is the gpio pin number and the
- second cell is used for optional parameters.
-- gpio-ranges: see ../gpio/gpio.txt
-
-Optional properties:
-
-- gpio-reserved-ranges: see ../gpio/gpio.txt
-
-Please refer to ../gpio/gpio.txt and ../interrupt-controller/interrupts.txt for
-a general description of GPIO and interrupt bindings.
-
-Please refer to pinctrl-bindings.txt in this directory for details of the
-common pinctrl bindings used by client devices, including the meaning of the
-phrase "pin configuration node".
-
-Qualcomm's pin configuration nodes act as a container for an arbitrary number of
-subnodes. Each of these subnodes represents some desired configuration for a
-pin, a group, or a list of pins or groups. This configuration can include the
-mux function to select on those pin(s)/group(s), and various pin configuration
-parameters, such as pull-up, drive strength, etc.
-
-The name of each subnode is not important; all subnodes should be enumerated
-and processed purely based on their content.
-
-Each subnode only affects those parameters that are explicitly listed. In
-other words, a subnode that lists a mux function but no pin configuration
-parameters implies no information about any pin configuration parameters.
-Similarly, a pin subnode that describes a pullup parameter implies no
-information about e.g. the mux function.
-
-
-The following generic properties as defined in pinctrl-bindings.txt are valid
-to specify in a pin configuration subnode:
-
- pins, function, bias-disable, bias-pull-down, bias-pull-up, drive-strength,
- output-low, output-high.
-
-Non-empty subnodes must specify the 'pins' property.
-
-Valid values for pins are:
- gpio0-gpio89
-
-Valid values for function are:
- cam_mclk, codec_mic_i2s, codec_spkr_i2s, gp_clk_0a, gp_clk_0b, gp_clk_1a,
- gp_clk_1b, gp_clk_2a, gp_clk_2b, gpio, gsbi1, gsbi2, gsbi3, gsbi4,
- gsbi4_cam_i2c, gsbi5, gsbi5_spi_cs1, gsbi5_spi_cs2, gsbi5_spi_cs3, gsbi6,
- gsbi6_spi_cs1, gsbi6_spi_cs2, gsbi6_spi_cs3, gsbi7, gsbi7_spi_cs1,
- gsbi7_spi_cs2, gsbi7_spi_cs3, gsbi_cam_i2c, hdmi, mi2s, riva_bt, riva_fm,
- riva_wlan, sdc2, sdc4, slimbus, spkr_i2s, tsif1, tsif2, usb2_hsic, ps_hold
-
-Example:
-
- msmgpio: pinctrl@800000 {
- compatible = "qcom,apq8064-pinctrl";
- reg = <0x800000 0x4000>;
-
- gpio-controller;
- #gpio-cells = <2>;
- interrupt-controller;
- #interrupt-cells = <2>;
- interrupts = <0 16 0x4>;
-
- pinctrl-names = "default";
- pinctrl-0 = <&gsbi5_uart_default>;
- gpio-ranges = <&msmgpio 0 0 90>;
-
- gsbi5_uart_default: gsbi5_uart_default {
- mux {
- pins = "gpio51", "gpio52";
- function = "gsbi5";
- };
-
- tx {
- pins = "gpio51";
- drive-strength = <4>;
- bias-disable;
- };
-
- rx {
- pins = "gpio52";
- drive-strength = <2>;
- bias-pull-up;
- };
- };
- };

Documentation/devicetree/bindings/pinctrl/qcom,apq8064-pinctrl.yaml

View file
diff --git a/Documentation/devicetree/bindings/pinctrl/qcom,apq8064-pinctrl.yaml b/Documentation/devicetree/bindings/pinctrl/qcom,apq8064-pinctrl.yaml
new file mode 100644
index 0000000..f251dcd
--- /dev/null
+++ b/Documentation/devicetree/bindings/pinctrl/qcom,apq8064-pinctrl.yaml
@@ -0,0 +1,110 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/pinctrl/qcom,apq8064-pinctrl.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Qualcomm Technologies, Inc. APQ8064 TLMM block
+
+maintainers:
+ - Bjorn Andersson <[email protected]>
+
+description: |
+ Top Level Mode Multiplexer pin controller in Qualcomm APQ8064 SoC.
+
+allOf:
+ - $ref: /schemas/pinctrl/qcom,tlmm-common.yaml#
+
+properties:
+ compatible:
+ const: qcom,apq8064-pinctrl
+
+ reg:
+ maxItems: 1
+
+ interrupts:
+ maxItems: 1
+
+ gpio-reserved-ranges: true
+
+patternProperties:
+ "-state$":
+ oneOf:
+ - $ref: "#/$defs/qcom-apq8064-tlmm-state"
+ - patternProperties:
+ "-pins$":
+ $ref: "#/$defs/qcom-apq8064-tlmm-state"
+ additionalProperties: false
+
+$defs:
+ qcom-apq8064-tlmm-state:
+ type: object
+ description:
+ Pinctrl node's client devices use subnodes for desired pin configuration.
+ Client device subnodes use below standard properties.
+ $ref: qcom,tlmm-common.yaml#/$defs/qcom-tlmm-state
+ unevaluatedProperties: false
+
+ properties:
+ pins:
+ description:
+ List of gpio pins affected by the properties specified in this
+ subnode.
+ items:
+ oneOf:
+ - pattern: "^gpio([0-9]|[1-8][0-9])$"
+ - enum: [ sdc1_clk, sdc1_cmd, sdc1_data, sdc3_clk, sdc3_cmd, sdc3_data ]
+ minItems: 1
+ maxItems: 36
+
+ function:
+ description:
+ Specify the alternative function to be configured for the specified
+ pins.
+ enum: [ cam_mclk, codec_mic_i2s, codec_spkr_i2s, gp_clk_0a,
+ gp_clk_0b, gp_clk_1a, gp_clk_1b, gp_clk_2a, gp_clk_2b,
+ gpio, gsbi1, gsbi2, gsbi3, gsbi4, gsbi4_cam_i2c,
+ gsbi5, gsbi5_spi_cs1, gsbi5_spi_cs2, gsbi5_spi_cs3,
+ gsbi6, gsbi6_spi_cs1, gsbi6_spi_cs2, gsbi6_spi_cs3,
+ gsbi7, gsbi7_spi_cs1, gsbi7_spi_cs2, gsbi7_spi_cs3,
+ gsbi_cam_i2c, hdmi, mi2s, riva_bt, riva_fm, riva_wlan,
+ sdc2, sdc4, slimbus, spkr_i2s, tsif1, tsif2, usb2_hsic,
+ ps_hold ]
+
+ required:
+ - pins
+
+required:
+ - compatible
+ - reg
+
+unevaluatedProperties: false
+
+examples:
+ - |
+ #include <dt-bindings/interrupt-controller/arm-gic.h>
+ tlmm: pinctrl@800000 {
+ compatible = "qcom,apq8064-pinctrl";
+ reg = <0x800000 0x4000>;
+
+ gpio-controller;
+ #gpio-cells = <2>;
+ gpio-ranges = <&tlmm 0 0 90>;
+ interrupt-controller;
+ #interrupt-cells = <2>;
+ interrupts = <GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH>;
+
+ uart-state {
+ rx-pins {
+ pins = "gpio52";
+ function = "gsbi5";
+ bias-pull-up;
+ };
+
+ tx-pins {
+ pins = "gpio51";
+ function = "gsbi5";
+ bias-disable;
+ };
+ };
+ };

Documentation/devicetree/bindings/pinctrl/qcom,apq8084-pinctrl.txt

View before deletion
diff --git a/Documentation/devicetree/bindings/pinctrl/qcom,apq8084-pinctrl.txt b/Documentation/devicetree/bindings/pinctrl/qcom,apq8084-pinctrl.txt
deleted file mode 100644
index c978239..0000000
--- a/Documentation/devicetree/bindings/pinctrl/qcom,apq8084-pinctrl.txt
+++ /dev/null
@@ -1,188 +0,0 @@
-Qualcomm APQ8084 TLMM block
-
-This binding describes the Top Level Mode Multiplexer block found in the
-MSM8960 platform.
-
-- compatible:
- Usage: required
- Value type: <string>
- Definition: must be "qcom,apq8084-pinctrl"
-
-- reg:
- Usage: required
- Value type: <prop-encoded-array>
- Definition: the base address and size of the TLMM register space.
-
-- interrupts:
- Usage: required
- Value type: <prop-encoded-array>
- Definition: should specify the TLMM summary IRQ.
-
-- interrupt-controller:
- Usage: required
- Value type: <none>
- Definition: identifies this node as an interrupt controller
-

This diff is incomplete. Download the complete patch.

Documentation/devicetree/bindings/pinctrl/qcom,apq8084-pinctrl.yaml

View file

This diff is incomplete. Download the complete patch.

Documentation/devicetree/bindings/pinctrl/qcom,ipq4019-pinctrl.txt

View before deletion

This diff is incomplete. Download the complete patch.

Documentation/devicetree/bindings/pinctrl/qcom,ipq4019-pinctrl.yaml

View file

This diff is incomplete. Download the complete patch.

Documentation/devicetree/bindings/pinctrl/qcom,ipq8064-pinctrl.txt

View before deletion

This diff is incomplete. Download the complete patch.

Documentation/devicetree/bindings/pinctrl/qcom,ipq8064-pinctrl.yaml

View file

This diff is incomplete. Download the complete patch.

Documentation/devicetree/bindings/pinctrl/qcom,pmic-gpio.yaml

View file

This diff is incomplete. Download the complete patch.

Documentation/devicetree/bindings/pinctrl/qcom,sdm845-pinctrl.yaml

View file

This diff is incomplete. Download the complete patch.

Documentation/devicetree/bindings/pinctrl/renesas,pfc.yaml

View file

This diff is incomplete. Download the complete patch.

Documentation/devicetree/bindings/pinctrl/rockchip,pinctrl.yaml

View file

This diff is incomplete. Download the complete patch.

Documentation/devicetree/bindings/pinctrl/sophgo,cv1800-pinctrl.yaml

View file

This diff is incomplete. Download the complete patch.

drivers/pinctrl/Kconfig

View file

This diff is incomplete. Download the complete patch.

drivers/pinctrl/Makefile

View file

This diff is incomplete. Download the complete patch.

drivers/pinctrl/bcm/pinctrl-bcm2835.c

View file

This diff is incomplete. Download the complete patch.

drivers/pinctrl/cirrus/pinctrl-madera-core.c

View file

This diff is incomplete. Download the complete patch.

drivers/pinctrl/core.c

View file

This diff is incomplete. Download the complete patch.

drivers/pinctrl/freescale/pinctrl-imx-scmi.c

View file

This diff is incomplete. Download the complete patch.

drivers/pinctrl/freescale/pinctrl-imx.c

View file

This diff is incomplete. Download the complete patch.

drivers/pinctrl/freescale/pinctrl-imx8mq.c

View file

This diff is incomplete. Download the complete patch.

drivers/pinctrl/intel/pinctrl-baytrail.c

View file

This diff is incomplete. Download the complete patch.

drivers/pinctrl/intel/pinctrl-intel.c

View file

This diff is incomplete. Download the complete patch.

drivers/pinctrl/intel/pinctrl-intel.h

View file

This diff is incomplete. Download the complete patch.

drivers/pinctrl/intel/pinctrl-lynxpoint.c

View file

This diff is incomplete. Download the complete patch.

drivers/pinctrl/mediatek/pinctrl-paris.c

View file

This diff is incomplete. Download the complete patch.

drivers/pinctrl/meson/pinctrl-amlogic-c3.c

View file

This diff is incomplete. Download the complete patch.

drivers/pinctrl/meson/pinctrl-amlogic-t7.c

View file

This diff is incomplete. Download the complete patch.

drivers/pinctrl/meson/pinctrl-meson-a1.c

View file

This diff is incomplete. Download the complete patch.

drivers/pinctrl/meson/pinctrl-meson-axg-pmx.c

View file

This diff is incomplete. Download the complete patch.

drivers/pinctrl/meson/pinctrl-meson-axg-pmx.h

View file

This diff is incomplete. Download the complete patch.

drivers/pinctrl/meson/pinctrl-meson-axg.c

View file

This diff is incomplete. Download the complete patch.

drivers/pinctrl/meson/pinctrl-meson-g12a.c

View file

This diff is incomplete. Download the complete patch.

drivers/pinctrl/meson/pinctrl-meson-gxbb.c

View file

This diff is incomplete. Download the complete patch.

drivers/pinctrl/meson/pinctrl-meson-gxl.c

View file

This diff is incomplete. Download the complete patch.

drivers/pinctrl/meson/pinctrl-meson-s4.c

View file

This diff is incomplete. Download the complete patch.

drivers/pinctrl/meson/pinctrl-meson.c

View file

This diff is incomplete. Download the complete patch.

drivers/pinctrl/meson/pinctrl-meson.h

View file

This diff is incomplete. Download the complete patch.

drivers/pinctrl/meson/pinctrl-meson8-pmx.c

View file

This diff is incomplete. Download the complete patch.

drivers/pinctrl/meson/pinctrl-meson8.c

View file

This diff is incomplete. Download the complete patch.

drivers/pinctrl/meson/pinctrl-meson8b.c

View file

This diff is incomplete. Download the complete patch.

drivers/pinctrl/mvebu/pinctrl-dove.c

View file

This diff is incomplete. Download the complete patch.

drivers/pinctrl/nomadik/pinctrl-abx500.c

View file

This diff is incomplete. Download the complete patch.

drivers/pinctrl/nomadik/pinctrl-nomadik.c

View file

This diff is incomplete. Download the complete patch.

drivers/pinctrl/nuvoton/pinctrl-npcm8xx.c

View file

This diff is incomplete. Download the complete patch.

drivers/pinctrl/nxp/pinctrl-s32cc.c

View file

This diff is incomplete. Download the complete patch.

drivers/pinctrl/pinconf-generic.c

View file

This diff is incomplete. Download the complete patch.

drivers/pinctrl/pinctrl-eyeq5.c

View file

This diff is incomplete. Download the complete patch.

drivers/pinctrl/pinctrl-k210.c

View file

This diff is incomplete. Download the complete patch.

drivers/pinctrl/pinctrl-rockchip.c

View file

This diff is incomplete. Download the complete patch.

drivers/pinctrl/pinctrl-rockchip.h

View file

This diff is incomplete. Download the complete patch.

drivers/pinctrl/pinctrl-single.c

View file

This diff is incomplete. Download the complete patch.

drivers/pinctrl/pinctrl-stmfx.c

View file

This diff is incomplete. Download the complete patch.

drivers/pinctrl/pinctrl-utils.c

View file

This diff is incomplete. Download the complete patch.

drivers/pinctrl/pinctrl-zynq.c

View file

This diff is incomplete. Download the complete patch.

drivers/pinctrl/pinmux.c

View file

This diff is incomplete. Download the complete patch.

drivers/pinctrl/realtek/pinctrl-rtd.c

View file

This diff is incomplete. Download the complete patch.

drivers/pinctrl/renesas/pinctrl-rzg2l.c

View file

This diff is incomplete. Download the complete patch.

drivers/pinctrl/renesas/pinctrl-rzv2m.c

View file

This diff is incomplete. Download the complete patch.

drivers/pinctrl/renesas/pinctrl.c

View file

This diff is incomplete. Download the complete patch.

drivers/pinctrl/samsung/pinctrl-exynos-arm.c

View file

This diff is incomplete. Download the complete patch.

drivers/pinctrl/samsung/pinctrl-exynos.c

View file

This diff is incomplete. Download the complete patch.

drivers/pinctrl/samsung/pinctrl-s3c64xx.c

View file

This diff is incomplete. Download the complete patch.

drivers/pinctrl/samsung/pinctrl-samsung.c

View file

This diff is incomplete. Download the complete patch.

drivers/pinctrl/samsung/pinctrl-samsung.h

View file

This diff is incomplete. Download the complete patch.

drivers/pinctrl/sophgo/Kconfig

View file

This diff is incomplete. Download the complete patch.

drivers/pinctrl/sophgo/Makefile

View file

This diff is incomplete. Download the complete patch.

drivers/pinctrl/sophgo/pinctrl-cv1800b.c

View file

This diff is incomplete. Download the complete patch.

drivers/pinctrl/sophgo/pinctrl-cv1812h.c

View file

This diff is incomplete. Download the complete patch.

drivers/pinctrl/sophgo/pinctrl-cv18xx.c

View file

This diff is incomplete. Download the complete patch.

drivers/pinctrl/sophgo/pinctrl-cv18xx.h

View file

This diff is incomplete. Download the complete patch.

drivers/pinctrl/sophgo/pinctrl-sg2000.c

View file

This diff is incomplete. Download the complete patch.

drivers/pinctrl/sophgo/pinctrl-sg2002.c

View file

This diff is incomplete. Download the complete patch.

drivers/pinctrl/sunxi/pinctrl-sunxi.c

View file

This diff is incomplete. Download the complete patch.

drivers/pinctrl/ti/pinctrl-ti-iodelay.c

View file

This diff is incomplete. Download the complete patch.

include/dt-bindings/pinctrl/pinctrl-cv1800b.h

View file

This diff is incomplete. Download the complete patch.

include/dt-bindings/pinctrl/pinctrl-cv1812h.h

View file

This diff is incomplete. Download the complete patch.

include/dt-bindings/pinctrl/pinctrl-cv18xx.h

View file

This diff is incomplete. Download the complete patch.

include/dt-bindings/pinctrl/pinctrl-sg2000.h

View file

This diff is incomplete. Download the complete patch.

include/dt-bindings/pinctrl/pinctrl-sg2002.h

View file

This diff is incomplete. Download the complete patch.

include/linux/pinctrl/pinconf-generic.h

View file

This diff is incomplete. Download the complete patch.