dt-bindings: clock: Convert qcom,lcc to DT schema

Message ID 20221015090946.448820-1-luca@z3ntu.xyz
State New
Headers
Series dt-bindings: clock: Convert qcom,lcc to DT schema |

Commit Message

Luca Weiss Oct. 15, 2022, 9:09 a.m. UTC
  Convert the text bindings for the lcc to yaml format. Doing this showed
that clocks and clock-names were not documented, so fix that now.

Signed-off-by: Luca Weiss <luca@z3ntu.xyz>
---
 .../devicetree/bindings/clock/qcom,lcc.txt    | 22 -----
 .../devicetree/bindings/clock/qcom,lcc.yaml   | 88 +++++++++++++++++++
 2 files changed, 88 insertions(+), 22 deletions(-)
 delete mode 100644 Documentation/devicetree/bindings/clock/qcom,lcc.txt
 create mode 100644 Documentation/devicetree/bindings/clock/qcom,lcc.yaml
  

Comments

Krzysztof Kozlowski Oct. 15, 2022, 1:06 p.m. UTC | #1
On 15/10/2022 05:09, Luca Weiss wrote:
> Convert the text bindings for the lcc to yaml format. Doing this showed
> that clocks and clock-names were not documented, so fix that now.
> 
> Signed-off-by: Luca Weiss <luca@z3ntu.xyz>
> ---
>  .../devicetree/bindings/clock/qcom,lcc.txt    | 22 -----
>  .../devicetree/bindings/clock/qcom,lcc.yaml   | 88 +++++++++++++++++++
>  2 files changed, 88 insertions(+), 22 deletions(-)
>  delete mode 100644 Documentation/devicetree/bindings/clock/qcom,lcc.txt
>  create mode 100644 Documentation/devicetree/bindings/clock/qcom,lcc.yaml
> 
> diff --git a/Documentation/devicetree/bindings/clock/qcom,lcc.txt b/Documentation/devicetree/bindings/clock/qcom,lcc.txt
> deleted file mode 100644
> index a3c78aa88038..000000000000
> --- a/Documentation/devicetree/bindings/clock/qcom,lcc.txt
> +++ /dev/null
> @@ -1,22 +0,0 @@
> -Qualcomm LPASS Clock & Reset Controller Binding
> -------------------------------------------------
> -
> -Required properties :
> -- compatible : shall contain only one of the following:
> -
> -			"qcom,lcc-msm8960"
> -			"qcom,lcc-apq8064"
> -			"qcom,lcc-ipq8064"
> -			"qcom,lcc-mdm9615"
> -
> -- reg : shall contain base register location and length
> -- #clock-cells : shall contain 1
> -- #reset-cells : shall contain 1
> -
> -Example:
> -	clock-controller@28000000 {
> -		compatible = "qcom,lcc-ipq8064";
> -		reg = <0x28000000 0x1000>;
> -		#clock-cells = <1>;
> -		#reset-cells = <1>;
> -	};
> diff --git a/Documentation/devicetree/bindings/clock/qcom,lcc.yaml b/Documentation/devicetree/bindings/clock/qcom,lcc.yaml
> new file mode 100644
> index 000000000000..03c99435d342
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/clock/qcom,lcc.yaml
> @@ -0,0 +1,88 @@
> +# SPDX-License-Identifier: GPL-2.0-only
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/clock/qcom,lcc.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Qualcomm LPASS Clock & Reset Controller Binding

Drop "Binding"

> +
> +maintainers:
> +  - Bjorn Andersson <andersson@kernel.org>
> +
> +properties:
> +  compatible:
> +    enum:
> +      - qcom,lcc-apq8064
> +      - qcom,lcc-ipq8064
> +      - qcom,lcc-mdm9615
> +      - qcom,lcc-msm8960
> +
> +  clocks:
> +    minItems: 8

Drop minItems

> +    maxItems: 8
> +
> +  clock-names:
> +    minItems: 8

Drop minItems

Best regards,
Krzysztof
  

Patch

diff --git a/Documentation/devicetree/bindings/clock/qcom,lcc.txt b/Documentation/devicetree/bindings/clock/qcom,lcc.txt
deleted file mode 100644
index a3c78aa88038..000000000000
--- a/Documentation/devicetree/bindings/clock/qcom,lcc.txt
+++ /dev/null
@@ -1,22 +0,0 @@ 
-Qualcomm LPASS Clock & Reset Controller Binding
-------------------------------------------------
-
-Required properties :
-- compatible : shall contain only one of the following:
-
-			"qcom,lcc-msm8960"
-			"qcom,lcc-apq8064"
-			"qcom,lcc-ipq8064"
-			"qcom,lcc-mdm9615"
-
-- reg : shall contain base register location and length
-- #clock-cells : shall contain 1
-- #reset-cells : shall contain 1
-
-Example:
-	clock-controller@28000000 {
-		compatible = "qcom,lcc-ipq8064";
-		reg = <0x28000000 0x1000>;
-		#clock-cells = <1>;
-		#reset-cells = <1>;
-	};
diff --git a/Documentation/devicetree/bindings/clock/qcom,lcc.yaml b/Documentation/devicetree/bindings/clock/qcom,lcc.yaml
new file mode 100644
index 000000000000..03c99435d342
--- /dev/null
+++ b/Documentation/devicetree/bindings/clock/qcom,lcc.yaml
@@ -0,0 +1,88 @@ 
+# SPDX-License-Identifier: GPL-2.0-only
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/clock/qcom,lcc.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Qualcomm LPASS Clock & Reset Controller Binding
+
+maintainers:
+  - Bjorn Andersson <andersson@kernel.org>
+
+properties:
+  compatible:
+    enum:
+      - qcom,lcc-apq8064
+      - qcom,lcc-ipq8064
+      - qcom,lcc-mdm9615
+      - qcom,lcc-msm8960
+
+  clocks:
+    minItems: 8
+    maxItems: 8
+
+  clock-names:
+    minItems: 8
+    maxItems: 8
+
+  '#clock-cells':
+    const: 1
+
+  '#reset-cells':
+    const: 1
+
+  reg:
+    maxItems: 1
+
+required:
+  - compatible
+  - reg
+  - '#clock-cells'
+  - '#reset-cells'
+
+additionalProperties: false
+
+allOf:
+  - if:
+      properties:
+        compatible:
+          contains:
+            enum:
+              - qcom,lcc-apq8064
+              - qcom,lcc-msm8960
+    then:
+      properties:
+        clocks:
+          items:
+            - description: Board PXO source
+            - description: PLL 4 Vote clock
+            - description: MI2S codec clock
+            - description: Mic I2S codec clock
+            - description: Mic I2S spare clock
+            - description: Speaker I2S codec clock
+            - description: Speaker I2S spare clock
+            - description: PCM codec clock
+
+        clock-names:
+          items:
+            - const: pxo
+            - const: pll4_vote
+            - const: mi2s_codec_clk
+            - const: codec_i2s_mic_codec_clk
+            - const: spare_i2s_mic_codec_clk
+            - const: codec_i2s_spkr_codec_clk
+            - const: spare_i2s_spkr_codec_clk
+            - const: pcm_codec_clk
+
+      required:
+        - clocks
+        - clock-names
+
+examples:
+  - |
+    clock-controller@28000000 {
+        compatible = "qcom,lcc-ipq8064";
+        reg = <0x28000000 0x1000>;
+        #clock-cells = <1>;
+        #reset-cells = <1>;
+    };