blob: 88b7672123a003e48fe39fbdac939447cfb2b0b4 [file] [log] [blame]
Tom Rini53633a82024-02-29 12:33:36 -05001# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/clock/qcom,kpss-gcc.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Krait Processor Sub-system (KPSS) Global Clock Controller (GCC)
8
9maintainers:
10 - Christian Marangi <ansuelsmth@gmail.com>
11
12description:
13 Krait Processor Sub-system (KPSS) Global Clock Controller (GCC). Used
14 to control L2 mux (in the current implementation) and provide access
15 to the kpss-gcc registers.
16
17properties:
18 compatible:
19 items:
20 - enum:
21 - qcom,kpss-gcc-ipq8064
22 - qcom,kpss-gcc-apq8064
23 - qcom,kpss-gcc-msm8974
24 - qcom,kpss-gcc-msm8960
25 - qcom,kpss-gcc-msm8660
26 - qcom,kpss-gcc-mdm9615
27 - const: qcom,kpss-gcc
28 - const: syscon
29
30 reg:
31 maxItems: 1
32
33 clocks:
34 minItems: 2
35 maxItems: 2
36
37 clock-names:
38 items:
39 - const: pll8_vote
40 - const: pxo
41
42 '#clock-cells':
43 const: 0
44
45required:
46 - compatible
47 - reg
48
49if:
50 properties:
51 compatible:
52 contains:
53 enum:
54 - qcom,kpss-gcc-ipq8064
55 - qcom,kpss-gcc-apq8064
56 - qcom,kpss-gcc-msm8974
57 - qcom,kpss-gcc-msm8960
58then:
59 required:
60 - clocks
61 - clock-names
62 - '#clock-cells'
63else:
64 properties:
65 clock: false
66 clock-names: false
67 '#clock-cells': false
68
69additionalProperties: false
70
71examples:
72 - |
73 #include <dt-bindings/clock/qcom,gcc-ipq806x.h>
74
75 clock-controller@2011000 {
76 compatible = "qcom,kpss-gcc-ipq8064", "qcom,kpss-gcc", "syscon";
77 reg = <0x2011000 0x1000>;
78 clocks = <&gcc PLL8_VOTE>, <&pxo_board>;
79 clock-names = "pll8_vote", "pxo";
80 #clock-cells = <0>;
81 };
82
83 - |
84 clock-controller@2011000 {
85 compatible = "qcom,kpss-gcc-mdm9615", "qcom,kpss-gcc", "syscon";
86 reg = <0x02011000 0x1000>;
87 };
88...