Re: [PATCH v2 1/2] dt-bindings: clock: Add SM7150 GCC clocks

From: Krzysztof Kozlowski
Date: Mon Jan 23 2023 - 04:11:38 EST


On 22/01/2023 20:29, Danila Tikhonov wrote:
> Add device tree bindings for global clock subsystem clock
> controller for Qualcomm Technology Inc's SM7150 SoCs.
>
> Co-developed-by: David Wronek <davidwronek@xxxxxxxxx>
> Signed-off-by: David Wronek <davidwronek@xxxxxxxxx>
> Signed-off-by: Danila Tikhonov <danila@xxxxxxxxxxx>
> ---
> .../bindings/clock/qcom,sm7150-gcc.yaml | 69 +++++++
> include/dt-bindings/clock/qcom,sm7150-gcc.h | 193 ++++++++++++++++++
> 2 files changed, 262 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/clock/qcom,sm7150-gcc.yaml
> create mode 100644 include/dt-bindings/clock/qcom,sm7150-gcc.h
>
> diff --git a/Documentation/devicetree/bindings/clock/qcom,sm7150-gcc.yaml b/Documentation/devicetree/bindings/clock/qcom,sm7150-gcc.yaml
> new file mode 100644
> index 000000000000..a0105e11fdb8
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/clock/qcom,sm7150-gcc.yaml
> @@ -0,0 +1,69 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/clock/qcom,sm7150-gcc.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Qualcomm Global Clock & Reset Controller on SM7150
> +
> +maintainers:
> + - Bjorn Andersson <andersson@xxxxxxxxxx>
> + - Danila Tikhonov <danila@xxxxxxxxxxx>
> + - David Wronek <davidwronek@xxxxxxxxx>
> +
> +description: |
> + Qualcomm global clock control module provides the clocks, resets and power
> + domains on SM7150
> +
> + See also:: include/dt-bindings/clock/qcom,sm7150-gcc.h
> +
> +properties:
> + compatible:
> + const: qcom,sm7150-gcc
> +
> + clocks:
> + items:
> + - description: Board XO source
> + - description: Board XO Active-Only source
> + - description: Sleep clock source
> +

If you started your work from the most recent bindings (e.g. sm8550) you
would have saved one iteration and one set of review...

> + '#clock-cells':
> + const: 1

Drop entire property, it's coming from gcc.yaml.


> + '#reset-cells':
> + const: 1

Ditto

> +
> + '#power-domain-cells':
> + const: 1

Ditto

> +
> + reg:
> + maxItems: 1

Ditto

> +
> +required:
> + - compatible
> + - reg

Drop reg

> + - clocks
> + - '#clock-cells'
> + - '#reset-cells'
> + - '#power-domain-cells'

Drop these three.

> +
> +allOf:
> + - $ref: qcom,gcc.yaml#
> +
> +unevaluatedProperties: false
> +
> +examples:
> + - |
> + #include <dt-bindings/clock/qcom,rpmh.h>
> + clock-controller@100000 {
> + compatible = "qcom,sm7150-gcc";
> + reg = <0x00100000 0x001f0000>;
> + clocks = <&rpmhcc RPMH_CXO_CLK>,
> + <&rpmhcc RPMH_CXO_CLK_A>,
> + <&sleep_clk>;
> + #clock-cells = <1>;
> + #reset-cells = <1>;
> + #power-domain-cells = <1>;
> + };
> +...
> +
> diff --git a/include/dt-bindings/clock/qcom,sm7150-gcc.h b/include/dt-bindings/clock/qcom,sm7150-gcc.h
> new file mode 100644
> index 000000000000..3e5f8d32796d
> --- /dev/null
> +++ b/include/dt-bindings/clock/qcom,sm7150-gcc.h
> @@ -0,0 +1,193 @@
> +/* SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) */
> +/*
> + * Copyright (c) 2023, Danila Tikhonov <danila@xxxxxxxxxxx>
> + * Copyright (c) 2023, David Wronek <davidwronek@xxxxxxxxx>

You did not base your work on any existing bindings upstream or
downstream? This should include original work copyrights...

Best regards,
Krzysztof