Message ID | 20230116204751.23045-2-ansuelsmth@gmail.com |
---|---|
State | New |
Headers | show |
Series | Krait Documentation conversion | expand |
16 января 2023 г. 23:20:17 GMT+02:00, Christian Marangi <ansuelsmth@gmail.com> пишет: >On Mon, Jan 16, 2023 at 11:14:10PM +0200, Dmitry Baryshkov wrote: >> On Mon, 16 Jan 2023 at 22:48, Christian Marangi <ansuelsmth@gmail.com> wrote: >> > >> > Convert qcom,krait-cc to yaml Documentation. >> > >> > Signed-off-by: Christian Marangi <ansuelsmth@gmail.com> >> > Reviewed-by: Krzysztof Kozlowski <krzk@kernel.org> >> > Acked-by: Rob Herring <robh@kernel.org> >> >> I know this has been reviewed already. I checked again my apq8064 >> branch and noticed that the bindings are not compatible with the >> apq8064. The SoC in question is a 4-core device, so this is what I had >> in mind: >> >> kraitcc: clock-controller { >> compatible = "qcom,krait-cc-v1"; >> clocks = <&gcc PLL9>, /* hfpll0 */ >> <&gcc PLL10>, /* hfpll1 */ >> <&gcc PLL16>, /* hfpll2 */ >> <&gcc PLL17>, /* hfpll3 */ >> <&gcc PLL12>, /* hfpll_l2 */ >> <&acc0>, >> <&acc1>, >> <&acc2>, >> <&acc3>, >> <&l2cc>; >> clock-names = "hfpll0", >> "hfpll1", >> "hfpll2", >> "hfpll3", >> "hfpll_l2", >> "acpu0_aux", >> "acpu1_aux", >> "acpu2_aux", >> "acpu3_aux", >> "acpu_l2_aux"; >> #clock-cells = <1>; >> }; >> > >Oh wow... Wasn't aware, but I wonder if a good idea would be to patch >the yaml if and when this series is merged? This is a direct conversion >of the krait-cc txt... > >If we really want I can send a v8 with adding these extra stuff to the >just converted yaml in a different commit? (afaik conversion should not >add more info if the documentation is not broken enough and can be >converted) I think we can ask Bjorn to pick the rest of the patches (if they are acked/reviewed, they look good to me) and work on this one. It might make sense to add per-SoC compatibles. Also note, the qsb clock. Which block generates it on ipq8064? > >> > --- >> > .../bindings/clock/qcom,krait-cc.txt | 34 ----------- >> > .../bindings/clock/qcom,krait-cc.yaml | 59 +++++++++++++++++++ >> > 2 files changed, 59 insertions(+), 34 deletions(-) >> > delete mode 100644 Documentation/devicetree/bindings/clock/qcom,krait-cc.txt >> > create mode 100644 Documentation/devicetree/bindings/clock/qcom,krait-cc.yaml >> > >> > diff --git a/Documentation/devicetree/bindings/clock/qcom,krait-cc.txt b/Documentation/devicetree/bindings/clock/qcom,krait-cc.txt >> > deleted file mode 100644 >> > index 030ba60dab08..000000000000 >> > --- a/Documentation/devicetree/bindings/clock/qcom,krait-cc.txt >> > +++ /dev/null >> > @@ -1,34 +0,0 @@ >> > -Krait Clock Controller >> > - >> > -PROPERTIES >> > - >> > -- compatible: >> > - Usage: required >> > - Value type: <string> >> > - Definition: must be one of: >> > - "qcom,krait-cc-v1" >> > - "qcom,krait-cc-v2" >> > - >> > -- #clock-cells: >> > - Usage: required >> > - Value type: <u32> >> > - Definition: must be 1 >> > - >> > -- clocks: >> > - Usage: required >> > - Value type: <prop-encoded-array> >> > - Definition: reference to the clock parents of hfpll, secondary muxes. >> > - >> > -- clock-names: >> > - Usage: required >> > - Value type: <stringlist> >> > - Definition: must be "hfpll0", "hfpll1", "acpu0_aux", "acpu1_aux", "qsb". >> > - >> > -Example: >> > - >> > - kraitcc: clock-controller { >> > - compatible = "qcom,krait-cc-v1"; >> > - clocks = <&hfpll0>, <&hfpll1>, <&acpu0_aux>, <&acpu1_aux>, <qsb>; >> > - clock-names = "hfpll0", "hfpll1", "acpu0_aux", "acpu1_aux", "qsb"; >> > - #clock-cells = <1>; >> > - }; >> > diff --git a/Documentation/devicetree/bindings/clock/qcom,krait-cc.yaml b/Documentation/devicetree/bindings/clock/qcom,krait-cc.yaml >> > new file mode 100644 >> > index 000000000000..8caa5a677394 >> > --- /dev/null >> > +++ b/Documentation/devicetree/bindings/clock/qcom,krait-cc.yaml >> > @@ -0,0 +1,59 @@ >> > +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause >> > +%YAML 1.2 >> > +--- >> > +$id: http://devicetree.org/schemas/clock/qcom,krait-cc.yaml# >> > +$schema: http://devicetree.org/meta-schemas/core.yaml# >> > + >> > +title: Qualcomm Krait Clock Controller >> > + >> > +maintainers: >> > + - Christian Marangi <ansuelsmth@gmail.com> >> > + >> > +description: | >> > + Qualcomm Krait Clock Controller used to correctly scale the CPU and the L2 >> > + rates. >> > + >> > +properties: >> > + compatible: >> > + enum: >> > + - qcom,krait-cc-v1 >> > + - qcom,krait-cc-v2 >> > + >> > + clocks: >> > + items: >> > + - description: phandle to hfpll for CPU0 mux >> > + - description: phandle to hfpll for CPU1 mux >> > + - description: phandle to CPU0 aux clock >> > + - description: phandle to CPU1 aux clock >> > + - description: phandle to QSB fixed clk >> > + >> > + clock-names: >> > + items: >> > + - const: hfpll0 >> > + - const: hfpll1 >> > + - const: acpu0_aux >> > + - const: acpu1_aux >> > + - const: qsb >> > + >> > + '#clock-cells': >> > + const: 1 >> > + >> > +required: >> > + - compatible >> > + - clocks >> > + - clock-names >> > + - '#clock-cells' >> > + >> > +additionalProperties: false >> > + >> > +examples: >> > + - | >> > + clock-controller { >> > + compatible = "qcom,krait-cc-v1"; >> > + clocks = <&hfpll0>, <&hfpll1>, >> > + <&acpu0_aux>, <&acpu1_aux>, <&qsb>; >> > + clock-names = "hfpll0", "hfpll1", >> > + "acpu0_aux", "acpu1_aux", "qsb"; >> > + #clock-cells = <1>; >> > + }; >> > +... >> > -- >> > 2.37.2 >> > >> >> >> -- >> With best wishes >> Dmitry >
diff --git a/Documentation/devicetree/bindings/clock/qcom,krait-cc.txt b/Documentation/devicetree/bindings/clock/qcom,krait-cc.txt deleted file mode 100644 index 030ba60dab08..000000000000 --- a/Documentation/devicetree/bindings/clock/qcom,krait-cc.txt +++ /dev/null @@ -1,34 +0,0 @@ -Krait Clock Controller - -PROPERTIES - -- compatible: - Usage: required - Value type: <string> - Definition: must be one of: - "qcom,krait-cc-v1" - "qcom,krait-cc-v2" - -- #clock-cells: - Usage: required - Value type: <u32> - Definition: must be 1 - -- clocks: - Usage: required - Value type: <prop-encoded-array> - Definition: reference to the clock parents of hfpll, secondary muxes. - -- clock-names: - Usage: required - Value type: <stringlist> - Definition: must be "hfpll0", "hfpll1", "acpu0_aux", "acpu1_aux", "qsb". - -Example: - - kraitcc: clock-controller { - compatible = "qcom,krait-cc-v1"; - clocks = <&hfpll0>, <&hfpll1>, <&acpu0_aux>, <&acpu1_aux>, <qsb>; - clock-names = "hfpll0", "hfpll1", "acpu0_aux", "acpu1_aux", "qsb"; - #clock-cells = <1>; - }; diff --git a/Documentation/devicetree/bindings/clock/qcom,krait-cc.yaml b/Documentation/devicetree/bindings/clock/qcom,krait-cc.yaml new file mode 100644 index 000000000000..8caa5a677394 --- /dev/null +++ b/Documentation/devicetree/bindings/clock/qcom,krait-cc.yaml @@ -0,0 +1,59 @@ +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/clock/qcom,krait-cc.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Qualcomm Krait Clock Controller + +maintainers: + - Christian Marangi <ansuelsmth@gmail.com> + +description: | + Qualcomm Krait Clock Controller used to correctly scale the CPU and the L2 + rates. + +properties: + compatible: + enum: + - qcom,krait-cc-v1 + - qcom,krait-cc-v2 + + clocks: + items: + - description: phandle to hfpll for CPU0 mux + - description: phandle to hfpll for CPU1 mux + - description: phandle to CPU0 aux clock + - description: phandle to CPU1 aux clock + - description: phandle to QSB fixed clk + + clock-names: + items: + - const: hfpll0 + - const: hfpll1 + - const: acpu0_aux + - const: acpu1_aux + - const: qsb + + '#clock-cells': + const: 1 + +required: + - compatible + - clocks + - clock-names + - '#clock-cells' + +additionalProperties: false + +examples: + - | + clock-controller { + compatible = "qcom,krait-cc-v1"; + clocks = <&hfpll0>, <&hfpll1>, + <&acpu0_aux>, <&acpu1_aux>, <&qsb>; + clock-names = "hfpll0", "hfpll1", + "acpu0_aux", "acpu1_aux", "qsb"; + #clock-cells = <1>; + }; +...