dt-bindings: clock: qcom,spmi-clkdiv: convert to DT schema
authorKrzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Fri, 23 Dec 2022 11:18:35 +0000 (12:18 +0100)
committerBjorn Andersson <andersson@kernel.org>
Wed, 11 Jan 2023 04:41:37 +0000 (22:41 -0600)
Convert Qualcomm SPMI PMIC clock divider bindings to DT schema.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Reviewed-by: Rob Herring <robh@kernel.org>
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
Link: https://lore.kernel.org/r/20221223111835.37610-1-krzysztof.kozlowski@linaro.org
Documentation/devicetree/bindings/clock/qcom,spmi-clkdiv.txt [deleted file]
Documentation/devicetree/bindings/clock/qcom,spmi-clkdiv.yaml [new file with mode: 0644]

diff --git a/Documentation/devicetree/bindings/clock/qcom,spmi-clkdiv.txt b/Documentation/devicetree/bindings/clock/qcom,spmi-clkdiv.txt
deleted file mode 100644 (file)
index 7474aba..0000000
+++ /dev/null
@@ -1,59 +0,0 @@
-Qualcomm Technologies, Inc. SPMI PMIC clock divider (clkdiv)
-
-clkdiv configures the clock frequency of a set of outputs on the PMIC.
-These clocks are typically wired through alternate functions on
-gpio pins.
-
-=======================
-Properties
-=======================
-
-- compatible
-       Usage:      required
-       Value type: <string>
-       Definition: must be "qcom,spmi-clkdiv".
-
-- reg
-       Usage:      required
-       Value type: <prop-encoded-array>
-       Definition: base address of CLKDIV peripherals.
-
-- qcom,num-clkdivs
-       Usage:      required
-       Value type: <u32>
-       Definition: number of CLKDIV peripherals.
-
-- clocks:
-       Usage: required
-       Value type: <prop-encoded-array>
-       Definition: reference to the xo clock.
-
-- clock-names:
-       Usage: required
-       Value type: <stringlist>
-       Definition: must be "xo".
-
-- #clock-cells:
-       Usage: required
-       Value type: <u32>
-       Definition: shall contain 1.
-
-=======
-Example
-=======
-
-pm8998_clk_divs: clock-controller@5b00 {
-       compatible = "qcom,spmi-clkdiv";
-       reg = <0x5b00>;
-       #clock-cells = <1>;
-       qcom,num-clkdivs = <3>;
-       clocks = <&xo_board>;
-       clock-names = "xo";
-
-       assigned-clocks = <&pm8998_clk_divs 1>,
-                         <&pm8998_clk_divs 2>,
-                         <&pm8998_clk_divs 3>;
-       assigned-clock-rates = <9600000>,
-                              <9600000>,
-                              <9600000>;
-};
diff --git a/Documentation/devicetree/bindings/clock/qcom,spmi-clkdiv.yaml b/Documentation/devicetree/bindings/clock/qcom,spmi-clkdiv.yaml
new file mode 100644 (file)
index 0000000..16c95ad
--- /dev/null
@@ -0,0 +1,71 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/clock/qcom,spmi-clkdiv.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Qualcomm SPMI PMIC clock divider
+
+maintainers:
+  - Bjorn Andersson <andersson@kernel.org>
+  - Stephen Boyd <sboyd@kernel.org>
+
+description: |
+  Qualcomm SPMI PMIC clock divider configures the clock frequency of a set of
+  outputs on the PMIC.  These clocks are typically wired through alternate
+  functions on GPIO pins.
+
+properties:
+  compatible:
+    const: qcom,spmi-clkdiv
+
+  reg:
+    maxItems: 1
+
+  clocks:
+    items:
+      - description: Board XO source
+
+  clock-names:
+    items:
+      - const: xo
+
+  "#clock-cells":
+    const: 1
+
+  qcom,num-clkdivs:
+    $ref: /schemas/types.yaml#/definitions/uint32
+    description: Number of CLKDIV peripherals.
+
+required:
+  - compatible
+  - reg
+  - clocks
+  - clock-names
+  - "#clock-cells"
+  - qcom,num-clkdivs
+
+additionalProperties: false
+
+examples:
+  - |
+    pmic {
+        #address-cells = <1>;
+        #size-cells = <0>;
+
+        clock-controller@5b00 {
+            compatible = "qcom,spmi-clkdiv";
+            reg = <0x5b00>;
+            clocks = <&xo_board>;
+            clock-names = "xo";
+            #clock-cells = <1>;
+            qcom,num-clkdivs = <3>;
+
+            assigned-clocks = <&pm8998_clk_divs 1>,
+                              <&pm8998_clk_divs 2>,
+                              <&pm8998_clk_divs 3>;
+            assigned-clock-rates = <9600000>,
+                                   <9600000>,
+                                   <9600000>;
+        };
+    };