Message ID | 20241229135351.5014-3-akemnade@kernel.org (mailing list archive) |
---|---|
State | New |
Headers | show |
Series | dt-bindings: clocks: ti: Next round of conversion | expand |
On Sun, 29 Dec 2024 14:53:51 +0100, akemnade@kernel.org wrote: > From: Andreas Kemnade <andreas@kemnade.info> > > Convert the OMAP gate clock device tree binding to json-schema. > Specify the creator of the original binding as a maintainer. > Choose GPL-only license because original binding was also GPL. > > Signed-off-by: Andreas Kemnade <andreas@kemnade.info> > --- > .../bindings/clock/ti/composite.txt | 55 ------------- > .../bindings/clock/ti/ti,composite-clock.yaml | 80 +++++++++++++++++++ > 2 files changed, 80 insertions(+), 55 deletions(-) > delete mode 100644 Documentation/devicetree/bindings/clock/ti/composite.txt > create mode 100644 Documentation/devicetree/bindings/clock/ti/ti,composite-clock.yaml > My bot found errors running 'make dt_binding_check' on your patch: yamllint warnings/errors: dtschema/dtc warnings/errors: Documentation/devicetree/bindings/clock/ti/ti,composite-clock.example.dtb: /example-0/bus/clock-controller@a10: failed to match any schema with compatible: ['ti,composite-interface-clock'] doc reference errors (make refcheckdocs): See https://patchwork.ozlabs.org/project/devicetree-bindings/patch/20241229135351.5014-3-akemnade@kernel.org The base for the series is generally the latest rc1. A different dependency should be noted in *this* patch. If you already ran 'make dt_binding_check' and didn't see the above error(s), then make sure 'yamllint' is installed and dt-schema is up to date: pip3 install dtschema --upgrade Please check and re-submit after running the above command yourself. Note that DT_SCHEMA_FILES can be set to your schema file to speed up checking your schema. However, it must be unset to test all examples with your schema.
On Sun, Dec 29, 2024 at 02:53:51PM +0100, akemnade@kernel.org wrote: > From: Andreas Kemnade <andreas@kemnade.info> > > Convert the OMAP gate clock device tree binding to json-schema. > Specify the creator of the original binding as a maintainer. > Choose GPL-only license because original binding was also GPL. > > Signed-off-by: Andreas Kemnade <andreas@kemnade.info> > --- > .../bindings/clock/ti/composite.txt | 55 ------------- > .../bindings/clock/ti/ti,composite-clock.yaml | 80 +++++++++++++++++++ > 2 files changed, 80 insertions(+), 55 deletions(-) > delete mode 100644 Documentation/devicetree/bindings/clock/ti/composite.txt > create mode 100644 Documentation/devicetree/bindings/clock/ti/ti,composite-clock.yaml > > diff --git a/Documentation/devicetree/bindings/clock/ti/composite.txt b/Documentation/devicetree/bindings/clock/ti/composite.txt > deleted file mode 100644 > index 238e6f7d74f8..000000000000 > --- a/Documentation/devicetree/bindings/clock/ti/composite.txt > +++ /dev/null > @@ -1,55 +0,0 @@ > -Binding for TI composite clock. > - > -This binding uses the common clock binding[1]. It assumes a > -register-mapped composite clock with multiple different sub-types; > - > -a multiplexer clock with multiple input clock signals or parents, one > -of which can be selected as output, this behaves exactly as [2] > - > -an adjustable clock rate divider, this behaves exactly as [3] > - > -a gating function which can be used to enable and disable the output > -clock, this behaves exactly as [4] > - > -The binding must provide a list of the component clocks that shall be > -merged to this clock. The component clocks shall be of one of the > -"ti,*composite*-clock" types. > - > -[1] Documentation/devicetree/bindings/clock/clock-bindings.txt > -[2] Documentation/devicetree/bindings/clock/ti/ti,mux-clock.yaml > -[3] Documentation/devicetree/bindings/clock/ti/ti,divider-clock.yaml > -[4] Documentation/devicetree/bindings/clock/ti/gate.txt > - > -Required properties: > -- compatible : shall be: "ti,composite-clock" > -- clocks : link phandles of component clocks > -- #clock-cells : from common clock binding; shall be set to 0. > - > -Optional properties: > -- clock-output-names : from common clock binding. > - > -Examples: > - > -usb_l4_gate_ick: usb_l4_gate_ick { > - #clock-cells = <0>; > - compatible = "ti,composite-interface-clock"; > - clocks = <&l4_ick>; > - ti,bit-shift = <5>; > - reg = <0x0a10>; > -}; > - > -usb_l4_div_ick: usb_l4_div_ick { > - #clock-cells = <0>; > - compatible = "ti,composite-divider-clock"; > - clocks = <&l4_ick>; > - ti,bit-shift = <4>; > - ti,max-div = <1>; > - reg = <0x0a40>; > - ti,index-starts-at-one; > -}; > - > -usb_l4_ick: usb_l4_ick { > - #clock-cells = <0>; > - compatible = "ti,composite-clock"; > - clocks = <&usb_l4_gate_ick>, <&usb_l4_div_ick>; > -}; > diff --git a/Documentation/devicetree/bindings/clock/ti/ti,composite-clock.yaml b/Documentation/devicetree/bindings/clock/ti/ti,composite-clock.yaml > new file mode 100644 > index 000000000000..b7063764bc0a > --- /dev/null > +++ b/Documentation/devicetree/bindings/clock/ti/ti,composite-clock.yaml > @@ -0,0 +1,80 @@ > +# SPDX-License-Identifier: GPL-2.0-only > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/clock/ti/ti,composite-clock.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Texas Instruments composite clock > + > +maintainers: > + - Tero Kristo <kristo@kernel.org> > + > +description: | > + This binding assumes a register-mapped composite clock with multiple > + different sub-types; s/;/:/ > + > + a multiplexer clock with multiple input clock signals or parents, one > + of which can be selected as output, this behaves exactly as [1]. > + > + an adjustable clock rate divider, this behaves exactly as [2]. > + > + a gating function which can be used to enable and disable the output > + clock, this behaves exactly as [3]. Indent these 3 paragraphs more since they are a list. > + > + The binding must provide a list of the component clocks that shall be > + merged to this clock. The component clocks shall be of one of the > + "ti,*composite*-clock" types. > + > + [1] Documentation/devicetree/bindings/clock/ti/ti,mux-clock.yaml > + [2] Documentation/devicetree/bindings/clock/ti/ti,divider-clock.yaml > + [3] Documentation/devicetree/bindings/clock/ti/ti,gate-clock.yaml > + > +properties: > + compatible: > + const: ti,composite-clock > + > + "#clock-cells": > + const: 0 > + > + clocks: true > + > + clock-output-names: > + maxItems: 1 > + > +required: > + - compatible > + - "#clock-cells" > + - clocks > + > +additionalProperties: false > + > +examples: > + - | > + bus { > + #address-cells = <1>; > + #size-cells = <0>; > + > + usb_l4_gate_ick: clock-controller@a10 { > + #clock-cells = <0>; > + compatible = "ti,composite-interface-clock"; > + clocks = <&l4_ick>; > + ti,bit-shift = <5>; > + reg = <0x0a10>; > + }; > + > + usb_l4_div_ick: clock-controller@a40 { > + #clock-cells = <0>; > + compatible = "ti,composite-divider-clock"; > + clocks = <&l4_ick>; > + ti,bit-shift = <4>; > + ti,max-div = <1>; > + reg = <0x0a40>; > + ti,index-starts-at-one; > + }; > + }; > + > + clock-controller { > + #clock-cells = <0>; > + compatible = "ti,composite-clock"; > + clocks = <&usb_l4_gate_ick>, <&usb_l4_div_ick>; > + }; > -- > 2.39.5 >
diff --git a/Documentation/devicetree/bindings/clock/ti/composite.txt b/Documentation/devicetree/bindings/clock/ti/composite.txt deleted file mode 100644 index 238e6f7d74f8..000000000000 --- a/Documentation/devicetree/bindings/clock/ti/composite.txt +++ /dev/null @@ -1,55 +0,0 @@ -Binding for TI composite clock. - -This binding uses the common clock binding[1]. It assumes a -register-mapped composite clock with multiple different sub-types; - -a multiplexer clock with multiple input clock signals or parents, one -of which can be selected as output, this behaves exactly as [2] - -an adjustable clock rate divider, this behaves exactly as [3] - -a gating function which can be used to enable and disable the output -clock, this behaves exactly as [4] - -The binding must provide a list of the component clocks that shall be -merged to this clock. The component clocks shall be of one of the -"ti,*composite*-clock" types. - -[1] Documentation/devicetree/bindings/clock/clock-bindings.txt -[2] Documentation/devicetree/bindings/clock/ti/ti,mux-clock.yaml -[3] Documentation/devicetree/bindings/clock/ti/ti,divider-clock.yaml -[4] Documentation/devicetree/bindings/clock/ti/gate.txt - -Required properties: -- compatible : shall be: "ti,composite-clock" -- clocks : link phandles of component clocks -- #clock-cells : from common clock binding; shall be set to 0. - -Optional properties: -- clock-output-names : from common clock binding. - -Examples: - -usb_l4_gate_ick: usb_l4_gate_ick { - #clock-cells = <0>; - compatible = "ti,composite-interface-clock"; - clocks = <&l4_ick>; - ti,bit-shift = <5>; - reg = <0x0a10>; -}; - -usb_l4_div_ick: usb_l4_div_ick { - #clock-cells = <0>; - compatible = "ti,composite-divider-clock"; - clocks = <&l4_ick>; - ti,bit-shift = <4>; - ti,max-div = <1>; - reg = <0x0a40>; - ti,index-starts-at-one; -}; - -usb_l4_ick: usb_l4_ick { - #clock-cells = <0>; - compatible = "ti,composite-clock"; - clocks = <&usb_l4_gate_ick>, <&usb_l4_div_ick>; -}; diff --git a/Documentation/devicetree/bindings/clock/ti/ti,composite-clock.yaml b/Documentation/devicetree/bindings/clock/ti/ti,composite-clock.yaml new file mode 100644 index 000000000000..b7063764bc0a --- /dev/null +++ b/Documentation/devicetree/bindings/clock/ti/ti,composite-clock.yaml @@ -0,0 +1,80 @@ +# SPDX-License-Identifier: GPL-2.0-only +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/clock/ti/ti,composite-clock.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Texas Instruments composite clock + +maintainers: + - Tero Kristo <kristo@kernel.org> + +description: | + This binding assumes a register-mapped composite clock with multiple + different sub-types; + + a multiplexer clock with multiple input clock signals or parents, one + of which can be selected as output, this behaves exactly as [1]. + + an adjustable clock rate divider, this behaves exactly as [2]. + + a gating function which can be used to enable and disable the output + clock, this behaves exactly as [3]. + + The binding must provide a list of the component clocks that shall be + merged to this clock. The component clocks shall be of one of the + "ti,*composite*-clock" types. + + [1] Documentation/devicetree/bindings/clock/ti/ti,mux-clock.yaml + [2] Documentation/devicetree/bindings/clock/ti/ti,divider-clock.yaml + [3] Documentation/devicetree/bindings/clock/ti/ti,gate-clock.yaml + +properties: + compatible: + const: ti,composite-clock + + "#clock-cells": + const: 0 + + clocks: true + + clock-output-names: + maxItems: 1 + +required: + - compatible + - "#clock-cells" + - clocks + +additionalProperties: false + +examples: + - | + bus { + #address-cells = <1>; + #size-cells = <0>; + + usb_l4_gate_ick: clock-controller@a10 { + #clock-cells = <0>; + compatible = "ti,composite-interface-clock"; + clocks = <&l4_ick>; + ti,bit-shift = <5>; + reg = <0x0a10>; + }; + + usb_l4_div_ick: clock-controller@a40 { + #clock-cells = <0>; + compatible = "ti,composite-divider-clock"; + clocks = <&l4_ick>; + ti,bit-shift = <4>; + ti,max-div = <1>; + reg = <0x0a40>; + ti,index-starts-at-one; + }; + }; + + clock-controller { + #clock-cells = <0>; + compatible = "ti,composite-clock"; + clocks = <&usb_l4_gate_ick>, <&usb_l4_div_ick>; + };