xref: /linux/Documentation/devicetree/bindings/clock/qcom,gcc-msm8998.yaml (revision 0526b56cbc3c489642bd6a5fe4b718dea7ef0ee8)
1# SPDX-License-Identifier: GPL-2.0-only
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/clock/qcom,gcc-msm8998.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Qualcomm Global Clock & Reset Controller on MSM8998
8
9maintainers:
10  - Stephen Boyd <sboyd@kernel.org>
11  - Taniya Das <tdas@codeaurora.org>
12
13description: |
14  Qualcomm global clock control module provides the clocks, resets and power
15  domains on MSM8998.
16
17  See also:: include/dt-bindings/clock/qcom,gcc-msm8998.h
18
19properties:
20  compatible:
21    const: qcom,gcc-msm8998
22
23  clocks:
24    items:
25      - description: Board XO source
26      - description: Sleep clock source
27      - description: Audio reference clock (Optional clock)
28    minItems: 2
29
30  clock-names:
31    items:
32      - const: xo
33      - const: sleep_clk
34      - const: aud_ref_clk # Optional clock
35    minItems: 2
36
37required:
38  - compatible
39  - clocks
40  - clock-names
41
42allOf:
43  - $ref: qcom,gcc.yaml#
44
45unevaluatedProperties: false
46
47examples:
48  - |
49    #include <dt-bindings/clock/qcom,rpmcc.h>
50    clock-controller@100000 {
51      compatible = "qcom,gcc-msm8998";
52      #clock-cells = <1>;
53      #reset-cells = <1>;
54      #power-domain-cells = <1>;
55      reg = <0x00100000 0xb0000>;
56      clocks = <&rpmcc RPM_SMD_XO_CLK_SRC>,
57               <&sleep>,
58               <0>;
59      clock-names = "xo",
60                    "sleep_clk",
61                    "aud_ref_clk";
62    };
63...
64