WIP FPC-III support
[linux/fpc-iii.git] / Documentation / devicetree / bindings / pwm / allwinner,sun4i-a10-pwm.yaml
blob7dcab2bf81280632c1c21bc14d0285e6f1de4915
1 # SPDX-License-Identifier: GPL-2.0
2 %YAML 1.2
3 ---
4 $id: http://devicetree.org/schemas/pwm/allwinner,sun4i-a10-pwm.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: Allwinner A10 PWM Device Tree Bindings
9 maintainers:
10   - Chen-Yu Tsai <wens@csie.org>
11   - Maxime Ripard <mripard@kernel.org>
13 properties:
14   "#pwm-cells":
15     const: 3
17   compatible:
18     oneOf:
19       - const: allwinner,sun4i-a10-pwm
20       - const: allwinner,sun5i-a10s-pwm
21       - const: allwinner,sun5i-a13-pwm
22       - const: allwinner,sun7i-a20-pwm
23       - const: allwinner,sun8i-h3-pwm
24       - items:
25           - const: allwinner,sun8i-a83t-pwm
26           - const: allwinner,sun8i-h3-pwm
27       - items:
28           - const: allwinner,sun50i-a64-pwm
29           - const: allwinner,sun5i-a13-pwm
30       - items:
31           - const: allwinner,sun50i-h5-pwm
32           - const: allwinner,sun5i-a13-pwm
33       - const: allwinner,sun50i-h6-pwm
35   reg:
36     maxItems: 1
38   clocks:
39     minItems: 1
40     maxItems: 2
41     items:
42       - description: Module Clock
43       - description: Bus Clock
45   # Even though it only applies to subschemas under the conditionals,
46   # not listing them here will trigger a warning because of the
47   # additionalsProperties set to false.
48   clock-names: true
50   resets:
51     maxItems: 1
53 if:
54   properties:
55     compatible:
56       contains:
57         const: allwinner,sun50i-h6-pwm
59 then:
60   properties:
61     clocks:
62       maxItems: 2
64     clock-names:
65       items:
66         - const: mod
67         - const: bus
69   required:
70     - clock-names
71     - resets
73 else:
74   properties:
75     clocks:
76       maxItems: 1
78 required:
79   - "#pwm-cells"
80   - compatible
81   - reg
82   - clocks
84 additionalProperties: false
86 examples:
87   - |
88     pwm: pwm@1c20e00 {
89         compatible = "allwinner,sun7i-a20-pwm";
90         reg = <0x01c20e00 0xc>;
91         clocks = <&osc24M>;
92         #pwm-cells = <3>;
93     };
95   - |
96     #include <dt-bindings/clock/sun50i-h6-ccu.h>
97     #include <dt-bindings/reset/sun50i-h6-ccu.h>
99     pwm@300a000 {
100       compatible = "allwinner,sun50i-h6-pwm";
101       reg = <0x0300a000 0x400>;
102       clocks = <&osc24M>, <&ccu CLK_BUS_PWM>;
103       clock-names = "mod", "bus";
104       resets = <&ccu RST_BUS_PWM>;
105       #pwm-cells = <3>;
106     };