Message ID | 20221005174343.24240-10-y.oudjana@protonmail.com |
---|---|
State | New |
Headers | show |
Series | MediaTek pinctrl DT binding cleanup and MT6735 pinctrl support | expand |
On Wed, 05 Oct 2022 20:43:42 +0300, Yassine Oudjana wrote: > From: Yassine Oudjana <y.oudjana@protonmail.com> > > 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 <y.oudjana@protonmail.com> > --- > .../pinctrl/mediatek,mt6779-pinctrl.yaml | 41 +++++++++++++++++++ > 1 file changed, 41 insertions(+) > Reviewed-by: Rob Herring <robh@kernel.org>
diff --git a/Documentation/devicetree/bindings/pinctrl/mediatek,mt6779-pinctrl.yaml b/Documentation/devicetree/bindings/pinctrl/mediatek,mt6779-pinctrl.yaml index f10d1d5543cb..66a0178caa8e 100644 --- a/Documentation/devicetree/bindings/pinctrl/mediatek,mt6779-pinctrl.yaml +++ b/Documentation/devicetree/bindings/pinctrl/mediatek,mt6779-pinctrl.yaml @@ -18,6 +18,8 @@ description: properties: compatible: enum: + - mediatek,mt6735-pinctrl + - mediatek,mt6735m-pinctrl - mediatek,mt6765-pinctrl - mediatek,mt6779-pinctrl - mediatek,mt6795-pinctrl @@ -61,6 +63,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: @@ -185,6 +210,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: