Re: [PATCH 1/5] dt-bindings: clock: fix wrong clock documentation for qcom,rpmcc

From: Krzysztof Kozlowski
Date: Wed Jul 06 2022 - 03:43:30 EST


On 05/07/2022 22:28, Christian Marangi wrote:
> qcom,rpmcc describe 2 different kind of device.
> Currently we have definition for rpm-smd based device but we lack
> Documentation for simple rpm based device.
>
> Add the missing clk for ipq806x, apq8060, msm8660 and apq8064 and
> provide and additional example.
>
> Signed-off-by: Christian Marangi <ansuelsmth@xxxxxxxxx>
> ---
> .../devicetree/bindings/clock/qcom,rpmcc.yaml | 77 ++++++++++++++++++-
> 1 file changed, 73 insertions(+), 4 deletions(-)
>
> diff --git a/Documentation/devicetree/bindings/clock/qcom,rpmcc.yaml b/Documentation/devicetree/bindings/clock/qcom,rpmcc.yaml
> index 9d296b89a8d0..028eb0277495 100644
> --- a/Documentation/devicetree/bindings/clock/qcom,rpmcc.yaml
> +++ b/Documentation/devicetree/bindings/clock/qcom,rpmcc.yaml
> @@ -48,16 +48,65 @@ properties:
> '#clock-cells':
> const: 1
>
> - clocks:
> - maxItems: 1
> + clocks: true
>
> - clock-names:
> - const: xo
> + clock-names: true

That's not correct way to describe these. Check other files, we've
already talked about this. You need min and maxItems here.

>
> required:
> - compatible
> - '#clock-cells'
>
> +if:

allOf

> + properties:
> + compatible:
> + contains:
> + enum:
> + - qcom,rpmcc-apq8060
> + - qcom,rpmcc-ipq806x
> + - qcom,rpmcc-msm8660
> +
> +then:
> + properties:
> + clocks:
> + description: pxo clock
> +
> + clock-names:
> + const: pxo
> +
> + required:
> + - clocks
> + - clock-names
> +
> +else:
> + if:

No nested ifs.

> + properties:
> + compatible:
> + contains:
> + const: qcom,rpmcc-apq8064
> + then:
> + properties:
> + clocks:
> + items:
> + - description: pxo clock
> + - description: cxo clock
> +
> + clock-names:
> + items:
> + - const: pxo
> + - const: cxo
> +
> + required:
> + - clocks
> + - clock-names
> +
> + else:
> + properties:
> + clocks:
> + description: xo clock
> +
> + clock-names:
> + const: xo
> +
> additionalProperties: false
>
> examples:
> @@ -73,3 +122,23 @@ examples:
> };
> };
> };
> +
> + - |
> + rpm {
> + clock-controller {
> + compatible = "qcom,rpmcc-ipq806x", "qcom,rpmcc";
> + #clock-cells = <1>;
> + clocks = <&pxo_board>;
> + clock-names = "pxo";
> + };
> + };
> +
> + - |
> + rpm {
> + clock-controller {
> + compatible = "qcom,rpmcc-apq8064", "qcom,rpmcc";
> + #clock-cells = <1>;
> + clocks = <&pxo_board>, <&cxo_board>;
> + clock-names = "pxo", "cxo";
> + };

These are the same. Provide examples only for blocks which are
significantly different.


Best regards,
Krzysztof