From: Yassine Oudjana <[email protected]>
Add bindings for the pin controller found on MediaTek MT6735 and
MT6735M SoCs, including describing a method to manually specify
a pin and function in the pinmux property making defining bindings
for each pin/function combination unnecessary. The pin controllers
on those SoCs are generally identical, with the only difference
being the lack of MSDC2 pins (198-203) on MT6735M.
Signed-off-by: Yassine Oudjana <[email protected]>
---
.../pinctrl/mediatek,mt67xx-pinctrl.yaml | 41 +++++++++++++++++++
1 file changed, 41 insertions(+)
diff --git a/Documentation/devicetree/bindings/pinctrl/mediatek,mt67xx-pinctrl.yaml b/Documentation/devicetree/bindings/pinctrl/mediatek,mt67xx-pinctrl.yaml
index 1a1a03cede3c..c5b4972caa77 100644
--- a/Documentation/devicetree/bindings/pinctrl/mediatek,mt67xx-pinctrl.yaml
+++ b/Documentation/devicetree/bindings/pinctrl/mediatek,mt67xx-pinctrl.yaml
@@ -20,6 +20,8 @@ properties:
compatible:
oneOf:
- enum:
+ - mediatek,mt6735-pinctrl
+ - mediatek,mt6735m-pinctrl
- mediatek,mt6765-pinctrl
- mediatek,mt6795-pinctrl
- mediatek,mt6797-pinctrl
@@ -63,6 +65,29 @@ required:
allOf:
- $ref: "pinctrl.yaml#"
+ - if:
+ properties:
+ compatible:
+ contains:
+ enum:
+ - mediatek,mt6735-pinctrl
+ - mediatek,mt6735m-pinctrl
+ then:
+ properties:
+ reg:
+ minItems: 8
+ maxItems: 8
+
+ reg-names:
+ items:
+ - const: gpio
+ - const: iocfg0
+ - const: iocfg1
+ - const: iocfg2
+ - const: iocfg3
+ - const: iocfg4
+ - const: iocfg5
+ - const: eint
- if:
properties:
compatible:
@@ -180,6 +205,22 @@ patternProperties:
};
};
};
+ The MTK_PIN_NO macro can also be used to select a pin and specify
+ a function index:
+ pincontroller {
+ /* Pin 19 set to function 0 (multifunction GPIO) */
+ gpio-pins {
+ pins {
+ pinmux = <(MTK_PIN_NO(19) | 0)>;
+ };
+ };
+ /* Pin 172 set to function 1 (primary function) */
+ msdc1-pins {
+ pins-cmd {
+ pinmux = <(MTK_PIN_NO(172) | 1)>;
+ };
+ };
+ };
$ref: "pinmux-node.yaml"
properties:
--
2.37.3