1# SPDX-License-Identifier: GPL-2.0-only
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/clock/qcom,mmcc.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Qualcomm Multimedia Clock & Reset Controller Binding
8
9maintainers:
10  - Jeffrey Hugo <jhugo@codeaurora.org>
11  - Taniya Das <tdas@codeaurora.org>
12
13description: |
14  Qualcomm multimedia clock control module which supports the clocks, resets and
15  power domains.
16
17properties:
18  compatible:
19    enum:
20      - qcom,mmcc-apq8064
21      - qcom,mmcc-apq8084
22      - qcom,mmcc-msm8660
23      - qcom,mmcc-msm8960
24      - qcom,mmcc-msm8974
25      - qcom,mmcc-msm8996
26      - qcom,mmcc-msm8998
27      - qcom,mmcc-sdm630
28      - qcom,mmcc-sdm660
29
30  clocks:
31    items:
32      - description: Board XO source
33      - description: Board sleep source
34      - description: Global PLL 0 clock
35      - description: DSI phy instance 0 dsi clock
36      - description: DSI phy instance 0 byte clock
37      - description: DSI phy instance 1 dsi clock
38      - description: DSI phy instance 1 byte clock
39      - description: HDMI phy PLL clock
40      - description: DisplayPort phy PLL vco clock
41      - description: DisplayPort phy PLL link clock
42
43  clock-names:
44    items:
45      - const: xo
46      - const: sleep
47      - const: gpll0
48      - const: dsi0dsi
49      - const: dsi0byte
50      - const: dsi1dsi
51      - const: dsi1byte
52      - const: hdmipll
53      - const: dpvco
54      - const: dplink
55
56  '#clock-cells':
57    const: 1
58
59  '#reset-cells':
60    const: 1
61
62  '#power-domain-cells':
63    const: 1
64
65  reg:
66    maxItems: 1
67
68  protected-clocks:
69    description:
70      Protected clock specifier list as per common clock binding
71
72  vdd-gfx-supply:
73    description:
74      Regulator supply for the GPU_GX GDSC
75
76required:
77  - compatible
78  - reg
79  - '#clock-cells'
80  - '#reset-cells'
81  - '#power-domain-cells'
82
83additionalProperties: false
84
85if:
86  properties:
87    compatible:
88      contains:
89        const: qcom,mmcc-msm8998
90
91then:
92  required:
93    - clocks
94    - clock-names
95
96examples:
97  # Example for MMCC for MSM8960:
98  - |
99    clock-controller@4000000 {
100      compatible = "qcom,mmcc-msm8960";
101      reg = <0x4000000 0x1000>;
102      #clock-cells = <1>;
103      #reset-cells = <1>;
104      #power-domain-cells = <1>;
105    };
106...
107