On 28/10/2022 11:35, Yassine Oudjana wrote: > From: Yassine Oudjana <y.oudjana@xxxxxxxxxxxxxx> > > Combine MT6795 pin controller document into MT6779 one. In the > process, amend the example with comments and additional pinctrl > nodes from the MT6795 example, replace the current interrupts > property description with the one from the MT6795 document since > it makes more sense and define its items using conditionals > as they now vary between variants. Also use conditionals to define > valid values for the drive-strength property for each variant. > > Signed-off-by: Yassine Oudjana <y.oudjana@xxxxxxxxxxxxxx> > --- > .../pinctrl/mediatek,mt6779-pinctrl.yaml | 189 ++++++++++----- > .../pinctrl/mediatek,pinctrl-mt6795.yaml | 227 ------------------ > 2 files changed, 127 insertions(+), 289 deletions(-) > delete mode 100644 Documentation/devicetree/bindings/pinctrl/mediatek,pinctrl-mt6795.yaml > > diff --git a/Documentation/devicetree/bindings/pinctrl/mediatek,mt6779-pinctrl.yaml b/Documentation/devicetree/bindings/pinctrl/mediatek,mt6779-pinctrl.yaml > index 70e4ffa2d897..6f2cffe50b11 100644 > --- a/Documentation/devicetree/bindings/pinctrl/mediatek,mt6779-pinctrl.yaml > +++ b/Documentation/devicetree/bindings/pinctrl/mediatek,mt6779-pinctrl.yaml > @@ -8,6 +8,7 @@ title: Mediatek MT6779 Pin Controller > > maintainers: > - Andy Teng <andy.teng@xxxxxxxxxxxx> > + - AngeloGioacchino Del Regno <angelogioacchino.delregno@xxxxxxxxxxxxx> > - Sean Wang <sean.wang@xxxxxxxxxx> > > description: > @@ -18,6 +19,7 @@ properties: > compatible: > enum: > - mediatek,mt6779-pinctrl > + - mediatek,mt6795-pinctrl > - mediatek,mt6797-pinctrl > > reg: > @@ -43,9 +45,7 @@ properties: > interrupt-controller: true > > interrupts: > - maxItems: 1 Leave the constraints. Why? Because now you dropped it for mt6797... You bring here some random changes and it is difficult to review it. > - description: | > - Specifies the summary IRQ. > + description: Interrupt outputs to the system interrupt controller (sysirq). > > "#interrupt-cells": > const: 2 > @@ -57,59 +57,6 @@ required: > - gpio-controller > - "#gpio-cells" > > -allOf: > - - $ref: "pinctrl.yaml#" > - - if: > - properties: Make the move of this hunk in your description cleanup patch. Don't mix functional changes and some cleanups. > - compatible: > - contains: > - const: mediatek,mt6779-pinctrl > - then: > - properties: > - reg: > - minItems: 9 > - maxItems: 9 > - > - reg-names: > - items: > - - const: gpio > - - const: iocfg_rm > - - const: iocfg_br > - - const: iocfg_lm > - - const: iocfg_lb > - - const: iocfg_rt > - - const: iocfg_lt > - - const: iocfg_tl > - - const: eint > - - if: > - properties: > - compatible: > - contains: > - const: mediatek,mt6797-pinctrl > - then: > - properties: > - reg: > - minItems: 5 > - maxItems: 5 > - > - reg-names: > - items: > - - const: gpio > - - const: iocfgl > - - const: iocfgb > - - const: iocfgr > - - const: iocfgt > - - if: > - properties: > - reg-names: > - contains: > - const: eint > - then: > - required: > - - interrupts > - - interrupt-controller > - - "#interrupt-cells" > - > patternProperties: > '-pins$': > type: object > @@ -169,8 +116,7 @@ patternProperties: > > input-schmitt-disable: true > > - drive-strength: > - enum: [2, 4, 8, 12, 16] > + drive-strength: true > > slew-rate: > enum: [0, 1] > @@ -202,6 +148,110 @@ patternProperties: > > additionalProperties: false > > +allOf: > + - $ref: "pinctrl.yaml#" > + - if: > + properties: > + compatible: > + contains: > + const: mediatek,mt6779-pinctrl > + then: > + properties: > + reg: > + minItems: 9 > + maxItems: 9 > + > + reg-names: > + items: > + - const: gpio > + - const: iocfg_rm > + - const: iocfg_br > + - const: iocfg_lm > + - const: iocfg_lb > + - const: iocfg_rt > + - const: iocfg_lt > + - const: iocfg_tl > + - const: eint > + > + interrupts: > + items: > + - description: EINT interrupt > + > + patternProperties: > + '-pins$': > + patternProperties: > + '^pins': > + properties: > + drive-strength: > + enum: [2, 4, 8, 12, 16] > + > + - if: > + properties: > + compatible: > + contains: > + const: mediatek,mt6795-pinctrl > + then: > + properties: > + reg: > + minItems: 2 > + maxItems: 2 > + > + reg-names: > + items: > + - const: base > + - const: eint > + > + interrupts: > + items: > + - description: EINT interrupt > + - description: EINT event_b interrupt > + > + patternProperties: > + '-pins$': > + patternProperties: > + '^pins': > + properties: > + drive-strength: > + enum: [2, 4, 6, 8, 10, 12, 14, 16] > + > + - if: > + properties: > + compatible: > + contains: > + const: mediatek,mt6797-pinctrl > + then: > + properties: > + reg: > + minItems: 5 > + maxItems: 5 > + > + reg-names: > + items: > + - const: gpio > + - const: iocfgl > + - const: iocfgb > + - const: iocfgr > + - const: iocfgt > + > + patternProperties: > + '-pins$': > + patternProperties: > + '^pins': > + properties: > + drive-strength: > + enum: [2, 4, 8, 12, 16] > + > + - if: > + properties: > + reg-names: > + contains: > + const: eint > + then: > + required: > + - interrupts > + - interrupt-controller > + - "#interrupt-cells" > + > additionalProperties: false > > examples: > @@ -237,8 +287,9 @@ examples: > #interrupt-cells = <2>; > interrupts = <GIC_SPI 204 IRQ_TYPE_LEVEL_HIGH>; > > - mmc0_pins_default: mmc0-0 { > - cmd-dat-pins { How this is related to the patch? Organize the patches so they are easy for review. Best regards, Krzysztof