Skip to content

Commit eafd95e

Browse files
committed
Merge tag 'pinctrl-v6.16-1' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl
Pull pin control updates from Linus Walleij: "An especially linear and sparse improvement and new drivers release. Nothing exciting. The biggest change in Bartosz changes to make gpiochip set/get calls return error codes (something we should have fixed ages ago but is now finally getting fixed.) Core changes: - Add the devres devm_pinctrl_register_mappings() call that can register some pin control machine mappings and have them go away with the associated device New drivers: - Support for the Mediatek MT6893 and MT8196 SoCs - Support for the Renesas RZ/V2N SoC - Support for the NXP Freescale i.MX943 SoC Improvements: - Per-SoC suspend/resume callbacks in the Samsung drivers - Set all pins as input (High-Z) at probe in the MCP23S08 driver - Switch most GPIO chips to use the setters/getters with a return value - EGPIO support in the Qualcomm QCM2290 driver - Fix up the number of available GPIO lines in Qualcomm QCS8300 and QCS615" * tag 'pinctrl-v6.16-1' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl: (82 commits) pinctrl: freescale: Add support for imx943 pinctrl pinctrl: core: add devm_pinctrl_register_mappings() pinctrl: remove extern specifier for functions in machine.h pinctrl: mediatek: eint: Fix invalid pointer dereference for v1 platforms pinctrl: freescale: Enable driver if platform is enabled. pinctrl: freescale: Depend imx-scu driver on OF pinctrl: armada-37xx: propagate error from armada_37xx_pmx_set_by_name() pinctrl: armada-37xx: propagate error from armada_37xx_gpio_get_direction() pinctrl: armada-37xx: propagate error from armada_37xx_pmx_gpio_set_direction() pinctrl: armada-37xx: propagate error from armada_37xx_gpio_get() pinctrl: armada-37xx: propagate error from armada_37xx_gpio_direction_output() pinctrl: armada-37xx: set GPIO output value before setting direction pinctrl: armada-37xx: use correct OUTPUT_VAL register for GPIOs > 31 pinctrl: meson: Drop unused aml_pctl_find_group_by_name() pinctrl: at91: Fix possible out-of-boundary access pinctrl: add stubs for OF-specific pinconf functions pinctrl: qcom: correct the ngpios entry for QCS8300 pinctrl: qcom: correct the ngpios entry for QCS615 dt-bindings: pinctrl: qcom: correct gpio-ranges in examples for qcs8300 dt-bindings: pinctrl: qcom: correct gpio-ranges in examples for qcs615 ...
2 parents 9f32a03 + 08dcbe3 commit eafd95e

File tree

79 files changed

+9753
-857
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

79 files changed

+9753
-857
lines changed

Documentation/devicetree/bindings/pinctrl/amlogic,pinctrl-a4.yaml

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,12 @@ allOf:
1414

1515
properties:
1616
compatible:
17-
const: amlogic,pinctrl-a4
17+
oneOf:
18+
- const: amlogic,pinctrl-a4
19+
- items:
20+
- enum:
21+
- amlogic,pinctrl-a5
22+
- const: amlogic,pinctrl-a4
1823

1924
"#address-cells":
2025
const: 2
Lines changed: 99 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,99 @@
1+
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2+
%YAML 1.2
3+
---
4+
$id: http://devicetree.org/schemas/pinctrl/fsl,imx7ulp-iomuxc1.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Freescale i.MX7ULP IOMUX Controller
8+
9+
description: |
10+
i.MX 7ULP has three IOMUXC instances: IOMUXC0 for M4 ports, IOMUXC1 for A7
11+
ports and IOMUXC DDR for DDR interface.
12+
13+
Note: This binding doc is only for the IOMUXC1 support in A7 Domain and it
14+
only supports generic pin config.
15+
16+
Please refer to fsl,imx-pinctrl.txt in this directory for common binding
17+
part and usage.
18+
19+
maintainers:
20+
- Frank Li <Frank.Li@nxp.com>
21+
22+
properties:
23+
compatible:
24+
const: fsl,imx7ulp-iomuxc1
25+
26+
reg:
27+
maxItems: 1
28+
29+
patternProperties:
30+
'grp$':
31+
type: object
32+
description:
33+
Pinctrl node's client devices use subnodes for desired pin configuration.
34+
Client device subnodes use below standard properties.
35+
36+
properties:
37+
fsl,pins:
38+
description:
39+
Each entry consists of 5 integers which represents the mux
40+
and config setting for one pin. The first 4 integers
41+
<mux_conf_reg input_reg mux_mode input_val> are specified
42+
using a PIN_FUNC_ID macro, which can be found in
43+
imx7ulp-pinfunc.h in the device tree source folder.
44+
The last integer CONFIG is the pad setting value like
45+
pull-up on this pin.
46+
47+
Please refer to i.MX7ULP Reference Manual for detailed
48+
CONFIG settings.
49+
$ref: /schemas/types.yaml#/definitions/uint32-matrix
50+
items:
51+
items:
52+
- description: |
53+
"mux_conf_reg" indicates the offset of mux register.
54+
- description: |
55+
"input_reg" indicates the offset of select input register.
56+
- description: |
57+
"mux_mode" indicates the mux value to be applied.
58+
- description: |
59+
"input_val" indicates the select input value to be applied.
60+
- description: |
61+
CONFIG bits definition:
62+
PAD_CTL_OBE (1 << 17)
63+
PAD_CTL_IBE (1 << 16)
64+
PAD_CTL_LK (1 << 16)
65+
PAD_CTL_DSE_HI (1 << 6)
66+
PAD_CTL_DSE_STD (0 << 6)
67+
PAD_CTL_ODE (1 << 5)
68+
PAD_CTL_PUSH_PULL (0 << 5)
69+
PAD_CTL_SRE_SLOW (1 << 2)
70+
PAD_CTL_SRE_STD (0 << 2)
71+
PAD_CTL_PE (1 << 0)
72+
73+
required:
74+
- fsl,pins
75+
76+
additionalProperties: false
77+
78+
required:
79+
- compatible
80+
- reg
81+
82+
allOf:
83+
- $ref: pinctrl.yaml#
84+
85+
unevaluatedProperties: false
86+
87+
examples:
88+
- |
89+
pinctrl@40ac0000 {
90+
compatible = "fsl,imx7ulp-iomuxc1";
91+
reg = <0x40ac0000 0x1000>;
92+
93+
lpuart4grp {
94+
fsl,pins = <
95+
0x000c 0x0248 0x4 0x1 0x1
96+
0x0008 0x024c 0x4 0x1 0x1
97+
>;
98+
};
99+
};

Documentation/devicetree/bindings/pinctrl/fsl,imx7ulp-pinctrl.txt

Lines changed: 0 additions & 53 deletions
This file was deleted.
Lines changed: 83 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,83 @@
1+
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2+
%YAML 1.2
3+
---
4+
$id: http://devicetree.org/schemas/pinctrl/fsl,vf610-iomuxc.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Freescale Vybrid VF610 IOMUX Controller
8+
9+
description:
10+
Please refer to fsl,imx-pinctrl.txt in this directory for common binding part
11+
and usage.
12+
13+
maintainers:
14+
- Frank Li <Frank.Li@nxp.com>
15+
16+
properties:
17+
compatible:
18+
const: fsl,vf610-iomuxc
19+
20+
reg:
21+
maxItems: 1
22+
23+
patternProperties:
24+
'grp$':
25+
type: object
26+
description:
27+
Pinctrl node's client devices use subnodes for desired pin configuration.
28+
Client device subnodes use below standard properties.
29+
30+
properties:
31+
fsl,pins:
32+
description:
33+
two integers array, represents a group of pins mux and config setting.
34+
The format is fsl,pins = <PIN_FUNC_ID CONFIG>, PIN_FUNC_ID is a pin
35+
working on a specific function, CONFIG is the pad setting value such
36+
as pull-up, speed, ode for this pin. Please refer to Vybrid VF610
37+
datasheet for the valid pad config settings.
38+
$ref: /schemas/types.yaml#/definitions/uint32-matrix
39+
items:
40+
items:
41+
- description:
42+
PIN_FUN_ID refer to vf610-pinfunc.h in device tree source folder
43+
for all available PIN_FUNC_ID for Vybrid VF610.
44+
- description: |
45+
CONFIG bits definition is
46+
PAD_CTL_SPEED_LOW (1 << 12)
47+
PAD_CTL_SPEED_MED (2 << 12)
48+
PAD_CTL_SPEED_HIGH (3 << 12)
49+
PAD_CTL_SRE_FAST (1 << 11)
50+
PAD_CTL_SRE_SLOW (0 << 11)
51+
PAD_CTL_ODE (1 << 10)
52+
PAD_CTL_HYS (1 << 9)
53+
PAD_CTL_DSE_DISABLE (0 << 6)
54+
PAD_CTL_DSE_150ohm (1 << 6)
55+
PAD_CTL_DSE_75ohm (2 << 6)
56+
PAD_CTL_DSE_50ohm (3 << 6)
57+
PAD_CTL_DSE_37ohm (4 << 6)
58+
PAD_CTL_DSE_30ohm (5 << 6)
59+
PAD_CTL_DSE_25ohm (6 << 6)
60+
PAD_CTL_DSE_20ohm (7 << 6)
61+
PAD_CTL_PUS_100K_DOWN (0 << 4)
62+
PAD_CTL_PUS_47K_UP (1 << 4)
63+
PAD_CTL_PUS_100K_UP (2 << 4)
64+
PAD_CTL_PUS_22K_UP (3 << 4)
65+
PAD_CTL_PKE (1 << 3)
66+
PAD_CTL_PUE (1 << 2)
67+
PAD_CTL_OBE_ENABLE (1 << 1)
68+
PAD_CTL_IBE_ENABLE (1 << 0)
69+
PAD_CTL_OBE_IBE_ENABLE (3 << 0)
70+
71+
required:
72+
- fsl,pins
73+
74+
additionalProperties: false
75+
76+
required:
77+
- compatible
78+
- reg
79+
80+
allOf:
81+
- $ref: pinctrl.yaml#
82+
83+
unevaluatedProperties: false

Documentation/devicetree/bindings/pinctrl/fsl,vf610-pinctrl.txt

Lines changed: 0 additions & 41 deletions
This file was deleted.

0 commit comments

Comments
 (0)