Merge tag 'dma-mapping-5.9-1' of git://git.infradead.org/users/hch/dma-mapping
[linux-2.6-microblaze.git] / Documentation / devicetree / bindings / clock / sprd,sc9863a-clk.yaml
1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2 # Copyright 2019 Unisoc Inc.
3 %YAML 1.2
4 ---
5 $id: "http://devicetree.org/schemas/clock/sprd,sc9863a-clk.yaml#"
6 $schema: "http://devicetree.org/meta-schemas/core.yaml#"
7
8 title: SC9863A Clock Control Unit Device Tree Bindings
9
10 maintainers:
11   - Orson Zhai <orsonzhai@gmail.com>
12   - Baolin Wang <baolin.wang7@gmail.com>
13   - Chunyan Zhang <zhang.lyra@gmail.com>
14
15 properties:
16   "#clock-cells":
17     const: 1
18
19   compatible:
20     enum:
21       - sprd,sc9863a-ap-clk
22       - sprd,sc9863a-aon-clk
23       - sprd,sc9863a-apahb-gate
24       - sprd,sc9863a-pmu-gate
25       - sprd,sc9863a-aonapb-gate
26       - sprd,sc9863a-pll
27       - sprd,sc9863a-mpll
28       - sprd,sc9863a-rpll
29       - sprd,sc9863a-dpll
30       - sprd,sc9863a-mm-gate
31       - sprd,sc9863a-mm-clk
32       - sprd,sc9863a-apapb-gate
33
34   clocks:
35     minItems: 1
36     maxItems: 4
37     description: |
38       The input parent clock(s) phandle for this clock, only list fixed
39       clocks which are declared in devicetree.
40
41   clock-names:
42     minItems: 1
43     maxItems: 4
44     items:
45       - const: ext-26m
46       - const: ext-32k
47       - const: ext-4m
48       - const: rco-100m
49
50   reg:
51     maxItems: 1
52
53 required:
54   - compatible
55   - '#clock-cells'
56
57 if:
58   properties:
59     compatible:
60       enum:
61         - sprd,sc9863a-ap-clk
62         - sprd,sc9863a-aon-clk
63 then:
64   required:
65     - reg
66
67 else:
68   description: |
69     Other SC9863a clock nodes should be the child of a syscon node in
70     which compatible string shoule be:
71             "sprd,sc9863a-glbregs", "syscon", "simple-mfd"
72
73     The 'reg' property for the clock node is also required if there is a sub
74     range of registers for the clocks.
75
76 examples:
77   - |
78     ap_clk: clock-controller@21500000 {
79       compatible = "sprd,sc9863a-ap-clk";
80       reg = <0x21500000 0x1000>;
81       clocks = <&ext_26m>, <&ext_32k>;
82       clock-names = "ext-26m", "ext-32k";
83       #clock-cells = <1>;
84     };
85
86   - |
87     syscon@20e00000 {
88       compatible = "sprd,sc9863a-glbregs", "syscon", "simple-mfd";
89       reg = <0x20e00000 0x4000>;
90       #address-cells = <1>;
91       #size-cells = <1>;
92       ranges = <0 0x20e00000 0x4000>;
93
94       apahb_gate: apahb-gate@0 {
95         compatible = "sprd,sc9863a-apahb-gate";
96         reg = <0x0 0x1020>;
97         #clock-cells = <1>;
98       };
99     };
100
101 ...