Message ID | 20220422131317.25410-2-allen-kh.cheng@mediatek.com |
---|---|
State | Changes Requested, archived |
Headers | show |
Series | dt-bindings: timer: mediatek: Convert binding to YAML | expand |
Context | Check | Description |
---|---|---|
robh/checkpatch | warning | total: 0 errors, 2 warnings, 79 lines checked |
robh/patch-applied | fail | build log |
On 22/04/2022 15:13, Allen-KH Cheng wrote: > Convert Mediatek timer devicetree binding to YAML. > > Signed-off-by: Allen-KH Cheng <allen-kh.cheng@mediatek.com> > --- > .../bindings/timer/mediatek,mtk-timer.txt | 42 ---------- > .../bindings/timer/mediatek,mtk-timer.yaml | 79 +++++++++++++++++++ > 2 files changed, 79 insertions(+), 42 deletions(-) > delete mode 100644 Documentation/devicetree/bindings/timer/mediatek,mtk-timer.txt > create mode 100644 Documentation/devicetree/bindings/timer/mediatek,mtk-timer.yaml > > diff --git a/Documentation/devicetree/bindings/timer/mediatek,mtk-timer.txt b/Documentation/devicetree/bindings/timer/mediatek,mtk-timer.txt > deleted file mode 100644 > index 6f1f9dba6e88..000000000000 > --- a/Documentation/devicetree/bindings/timer/mediatek,mtk-timer.txt > +++ /dev/null > @@ -1,42 +0,0 @@ > -MediaTek Timers > ---------------- > - > -MediaTek SoCs have two different timers on different platforms, > -- GPT (General Purpose Timer) > -- SYST (System Timer) > - > -The proper timer will be selected automatically by driver. > - > -Required properties: > -- compatible should contain: > - For those SoCs that use GPT > - * "mediatek,mt2701-timer" for MT2701 compatible timers (GPT) > - * "mediatek,mt6580-timer" for MT6580 compatible timers (GPT) > - * "mediatek,mt6582-timer" for MT6582 compatible timers (GPT) > - * "mediatek,mt6589-timer" for MT6589 compatible timers (GPT) > - * "mediatek,mt7623-timer" for MT7623 compatible timers (GPT) > - * "mediatek,mt8127-timer" for MT8127 compatible timers (GPT) > - * "mediatek,mt8135-timer" for MT8135 compatible timers (GPT) > - * "mediatek,mt8173-timer" for MT8173 compatible timers (GPT) > - * "mediatek,mt8516-timer" for MT8516 compatible timers (GPT) > - * "mediatek,mt6577-timer" for MT6577 and all above compatible timers (GPT) > - > - For those SoCs that use SYST > - * "mediatek,mt8183-timer" for MT8183 compatible timers (SYST) > - * "mediatek,mt8186-timer" for MT8186 compatible timers (SYST) > - * "mediatek,mt8192-timer" for MT8192 compatible timers (SYST) > - * "mediatek,mt8195-timer" for MT8195 compatible timers (SYST) > - * "mediatek,mt7629-timer" for MT7629 compatible timers (SYST) > - * "mediatek,mt6765-timer" for MT6765 and all above compatible timers (SYST) > - > -- reg: Should contain location and length for timer register. > -- clocks: Should contain system clock. > - > -Examples: > - > - timer@10008000 { > - compatible = "mediatek,mt6577-timer"; > - reg = <0x10008000 0x80>; > - interrupts = <GIC_SPI 113 IRQ_TYPE_LEVEL_LOW>; > - clocks = <&system_clk>; > - }; > diff --git a/Documentation/devicetree/bindings/timer/mediatek,mtk-timer.yaml b/Documentation/devicetree/bindings/timer/mediatek,mtk-timer.yaml > new file mode 100644 > index 000000000000..be7eb09275f9 > --- /dev/null > +++ b/Documentation/devicetree/bindings/timer/mediatek,mtk-timer.yaml > @@ -0,0 +1,79 @@ > +# SPDX-License-Identifier: GPL-2.0-or-later OR BSD-2-Clause > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/timer/mediatek,mtk-timer.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: MediaTek SoCs timers bindings > + > +description: > + MediaTek SoCs have two different timers on different platforms, > + - GPT (General Purpose Timer) > + - SYST (System Timer) > + > +maintainers: > + - Fengquan Chen <fengquan.chen@mediatek.com> > + - Allen-KH Cheng <allen-kh.cheng@mediatek.com> > + > +properties: > + $nodename: > + pattern: '^timer@[a-f0-9]+$' > + > + compatible: > + oneOf: > + - const: mediatek,mt6577-timer > + - const: mediatek,mt6765-timer > + - items: > + - enum: > + - mediatek,mt2701-timer > + - mediatek,mt6580-timer > + - mediatek,mt6582-timer > + - mediatek,mt6589-timer > + - mediatek,mt7623-timer > + - mediatek,mt8127-timer > + - mediatek,mt8135-timer > + - mediatek,mt8173-timer > + - mediatek,mt8516-timer > + - const: mediatek,mt6577-timer > + - items: > + - enum: > + - mediatek,mt7629-timer > + - mediatek,mt8183-timer > + - mediatek,mt8186-timer > + - mediatek,mt8192-timer > + - mediatek,mt8195-timer > + - const: mediatek,mt6765-timer > + > + reg: > + maxItems: 1 > + > + interrupts: > + maxItems: 1 > + > + clocks: > + minItems: 1 > + maxItems: 2 > + > + clock-names: > + minItems: 1 > + items: > + - const: clk13m > + - const: bus > + > +required: > + - compatible > + - reg > + - interrupts Are we missing clocks here? Regards, Matthias > + > +additionalProperties: false > + > +examples: > + - | > + timer@10008000 { > + compatible = "mediatek,mt6577-timer"; > + reg = <0xd4014000 0x100>; > + interrupts = <13>; > + clocks = <&coreclk 2>; > + }; > + > +...
On 22/04/2022 15:13, Allen-KH Cheng wrote: You should also fix the DTSes to match the new schema. > +$id: http://devicetree.org/schemas/timer/mediatek,mtk-timer.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: MediaTek SoCs timers bindings > + > +description: > + MediaTek SoCs have two different timers on different platforms, > + - GPT (General Purpose Timer) > + - SYST (System Timer) > + > +maintainers: > + - Fengquan Chen <fengquan.chen@mediatek.com> > + - Allen-KH Cheng <allen-kh.cheng@mediatek.com> > + > +properties: > + $nodename: > + pattern: '^timer@[a-f0-9]+$' > + > + compatible: > + oneOf: > + - const: mediatek,mt6577-timer > + - const: mediatek,mt6765-timer These two entries should be an enum. > + - items: > + - enum: > + - mediatek,mt2701-timer > + - mediatek,mt6580-timer > + - mediatek,mt6582-timer > + - mediatek,mt6589-timer > + - mediatek,mt7623-timer > + - mediatek,mt8127-timer > + - mediatek,mt8135-timer > + - mediatek,mt8173-timer > + - mediatek,mt8516-timer > + - const: mediatek,mt6577-timer > + - items: > + - enum: > + - mediatek,mt7629-timer > + - mediatek,mt8183-timer > + - mediatek,mt8186-timer > + - mediatek,mt8192-timer > + - mediatek,mt8195-timer > + - const: mediatek,mt6765-timer > + > + reg: > + maxItems: 1 > + > + interrupts: > + maxItems: 1 > + > + clocks: > + minItems: 1 > + maxItems: 2 > + > + clock-names: > + minItems: 1 > + items: > + - const: clk13m > + - const: bus When is the bus clock optional? > + > +required: > + - compatible > + - reg clocks are required in the old bindings > + - interrupts > + > +additionalProperties: false > + > +examples: > + - | > + timer@10008000 { > + compatible = "mediatek,mt6577-timer"; > + reg = <0xd4014000 0x100>; reg does not match unit address. > + interrupts = <13>; > + clocks = <&coreclk 2>; > + }; > + > +... Best regards, Krzysztof
diff --git a/Documentation/devicetree/bindings/timer/mediatek,mtk-timer.txt b/Documentation/devicetree/bindings/timer/mediatek,mtk-timer.txt deleted file mode 100644 index 6f1f9dba6e88..000000000000 --- a/Documentation/devicetree/bindings/timer/mediatek,mtk-timer.txt +++ /dev/null @@ -1,42 +0,0 @@ -MediaTek Timers ---------------- - -MediaTek SoCs have two different timers on different platforms, -- GPT (General Purpose Timer) -- SYST (System Timer) - -The proper timer will be selected automatically by driver. - -Required properties: -- compatible should contain: - For those SoCs that use GPT - * "mediatek,mt2701-timer" for MT2701 compatible timers (GPT) - * "mediatek,mt6580-timer" for MT6580 compatible timers (GPT) - * "mediatek,mt6582-timer" for MT6582 compatible timers (GPT) - * "mediatek,mt6589-timer" for MT6589 compatible timers (GPT) - * "mediatek,mt7623-timer" for MT7623 compatible timers (GPT) - * "mediatek,mt8127-timer" for MT8127 compatible timers (GPT) - * "mediatek,mt8135-timer" for MT8135 compatible timers (GPT) - * "mediatek,mt8173-timer" for MT8173 compatible timers (GPT) - * "mediatek,mt8516-timer" for MT8516 compatible timers (GPT) - * "mediatek,mt6577-timer" for MT6577 and all above compatible timers (GPT) - - For those SoCs that use SYST - * "mediatek,mt8183-timer" for MT8183 compatible timers (SYST) - * "mediatek,mt8186-timer" for MT8186 compatible timers (SYST) - * "mediatek,mt8192-timer" for MT8192 compatible timers (SYST) - * "mediatek,mt8195-timer" for MT8195 compatible timers (SYST) - * "mediatek,mt7629-timer" for MT7629 compatible timers (SYST) - * "mediatek,mt6765-timer" for MT6765 and all above compatible timers (SYST) - -- reg: Should contain location and length for timer register. -- clocks: Should contain system clock. - -Examples: - - timer@10008000 { - compatible = "mediatek,mt6577-timer"; - reg = <0x10008000 0x80>; - interrupts = <GIC_SPI 113 IRQ_TYPE_LEVEL_LOW>; - clocks = <&system_clk>; - }; diff --git a/Documentation/devicetree/bindings/timer/mediatek,mtk-timer.yaml b/Documentation/devicetree/bindings/timer/mediatek,mtk-timer.yaml new file mode 100644 index 000000000000..be7eb09275f9 --- /dev/null +++ b/Documentation/devicetree/bindings/timer/mediatek,mtk-timer.yaml @@ -0,0 +1,79 @@ +# SPDX-License-Identifier: GPL-2.0-or-later OR BSD-2-Clause +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/timer/mediatek,mtk-timer.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: MediaTek SoCs timers bindings + +description: + MediaTek SoCs have two different timers on different platforms, + - GPT (General Purpose Timer) + - SYST (System Timer) + +maintainers: + - Fengquan Chen <fengquan.chen@mediatek.com> + - Allen-KH Cheng <allen-kh.cheng@mediatek.com> + +properties: + $nodename: + pattern: '^timer@[a-f0-9]+$' + + compatible: + oneOf: + - const: mediatek,mt6577-timer + - const: mediatek,mt6765-timer + - items: + - enum: + - mediatek,mt2701-timer + - mediatek,mt6580-timer + - mediatek,mt6582-timer + - mediatek,mt6589-timer + - mediatek,mt7623-timer + - mediatek,mt8127-timer + - mediatek,mt8135-timer + - mediatek,mt8173-timer + - mediatek,mt8516-timer + - const: mediatek,mt6577-timer + - items: + - enum: + - mediatek,mt7629-timer + - mediatek,mt8183-timer + - mediatek,mt8186-timer + - mediatek,mt8192-timer + - mediatek,mt8195-timer + - const: mediatek,mt6765-timer + + reg: + maxItems: 1 + + interrupts: + maxItems: 1 + + clocks: + minItems: 1 + maxItems: 2 + + clock-names: + minItems: 1 + items: + - const: clk13m + - const: bus + +required: + - compatible + - reg + - interrupts + +additionalProperties: false + +examples: + - | + timer@10008000 { + compatible = "mediatek,mt6577-timer"; + reg = <0xd4014000 0x100>; + interrupts = <13>; + clocks = <&coreclk 2>; + }; + +...
Convert Mediatek timer devicetree binding to YAML. Signed-off-by: Allen-KH Cheng <allen-kh.cheng@mediatek.com> --- .../bindings/timer/mediatek,mtk-timer.txt | 42 ---------- .../bindings/timer/mediatek,mtk-timer.yaml | 79 +++++++++++++++++++ 2 files changed, 79 insertions(+), 42 deletions(-) delete mode 100644 Documentation/devicetree/bindings/timer/mediatek,mtk-timer.txt create mode 100644 Documentation/devicetree/bindings/timer/mediatek,mtk-timer.yaml