Merge tag 'for-linus-5.6-1' of https://github.com/cminyard/linux-ipmi
[sfrench/cifs-2.6.git] / Documentation / devicetree / bindings / clock / allwinner,sun4i-a10-usb-clk.yaml
1 # SPDX-License-Identifier: GPL-2.0
2 %YAML 1.2
3 ---
4 $id: http://devicetree.org/schemas/clock/allwinner,sun4i-a10-usb-clk.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
6
7 title: Allwinner A10 USB Clock Device Tree Bindings
8
9 maintainers:
10   - Chen-Yu Tsai <wens@csie.org>
11   - Maxime Ripard <mripard@kernel.org>
12
13 deprecated: true
14
15 properties:
16   "#clock-cells":
17     const: 1
18     description: >
19       The additional ID argument passed to the clock shall refer to
20       the index of the output.
21
22   "#reset-cells":
23     const: 1
24
25   compatible:
26     enum:
27       - allwinner,sun4i-a10-usb-clk
28       - allwinner,sun5i-a13-usb-clk
29       - allwinner,sun6i-a31-usb-clk
30       - allwinner,sun8i-a23-usb-clk
31       - allwinner,sun8i-h3-usb-clk
32
33   reg:
34     maxItems: 1
35
36   clocks:
37     maxItems: 1
38
39   clock-output-names:
40     minItems: 2
41     maxItems: 8
42
43 required:
44   - "#clock-cells"
45   - "#reset-cells"
46   - compatible
47   - reg
48   - clocks
49   - clock-output-names
50
51 additionalProperties: false
52
53 allOf:
54   - if:
55       properties:
56         compatible:
57           contains:
58             const: allwinner,sun4i-a10-usb-clk
59
60     then:
61       properties:
62         clock-output-names:
63           maxItems: 3
64
65   - if:
66       properties:
67         compatible:
68           contains:
69             const: allwinner,sun5i-a13-usb-clk
70
71     then:
72       properties:
73         clock-output-names:
74           maxItems: 2
75
76   - if:
77       properties:
78         compatible:
79           contains:
80             const: allwinner,sun6i-a31-usb-clk
81
82     then:
83       properties:
84         clock-output-names:
85           maxItems: 6
86
87   - if:
88       properties:
89         compatible:
90           contains:
91             const: allwinner,sun8i-a23-usb-clk
92
93     then:
94       properties:
95         clock-output-names:
96           maxItems: 5
97
98   - if:
99       properties:
100         compatible:
101           contains:
102             const: allwinner,sun8i-h3-usb-clk
103
104     then:
105       properties:
106         clock-output-names:
107           maxItems: 8
108
109 examples:
110   - |
111     clk@1c200cc {
112         #clock-cells = <1>;
113         #reset-cells = <1>;
114         compatible = "allwinner,sun4i-a10-usb-clk";
115         reg = <0x01c200cc 0x4>;
116         clocks = <&pll6 1>;
117         clock-output-names = "usb_ohci0", "usb_ohci1", "usb_phy";
118     };
119
120   - |
121     clk@1c200cc {
122         #clock-cells = <1>;
123         #reset-cells = <1>;
124         compatible = "allwinner,sun5i-a13-usb-clk";
125         reg = <0x01c200cc 0x4>;
126         clocks = <&pll6 1>;
127         clock-output-names = "usb_ohci0", "usb_phy";
128     };
129
130   - |
131     clk@1c200cc {
132         #clock-cells = <1>;
133         #reset-cells = <1>;
134         compatible = "allwinner,sun6i-a31-usb-clk";
135         reg = <0x01c200cc 0x4>;
136         clocks = <&osc24M>;
137         clock-output-names = "usb_phy0", "usb_phy1", "usb_phy2",
138                              "usb_ohci0", "usb_ohci1",
139                              "usb_ohci2";
140     };
141
142   - |
143     clk@1c200cc {
144         #clock-cells = <1>;
145         #reset-cells = <1>;
146         compatible = "allwinner,sun8i-a23-usb-clk";
147         reg = <0x01c200cc 0x4>;
148         clocks = <&osc24M>;
149         clock-output-names = "usb_phy0", "usb_phy1", "usb_hsic",
150                              "usb_hsic_12M", "usb_ohci0";
151     };
152
153   - |
154     clk@1c200cc {
155         #clock-cells = <1>;
156         #reset-cells = <1>;
157         compatible = "allwinner,sun8i-h3-usb-clk";
158         reg = <0x01c200cc 0x4>;
159         clocks = <&osc24M>;
160         clock-output-names = "usb_phy0", "usb_phy1",
161                              "usb_phy2", "usb_phy3",
162                              "usb_ohci0", "usb_ohci1",
163                              "usb_ohci2", "usb_ohci3";
164     };
165
166 ...