xref: /linux/Documentation/devicetree/bindings/pwm/google,cros-ec-pwm.yaml (revision daa121128a2d2ac6006159e2c47676e4fcd21eab)
1# SPDX-License-Identifier: GPL-2.0
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/pwm/google,cros-ec-pwm.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: PWM controlled by ChromeOS EC
8
9maintainers:
10  - Thierry Reding <thierry.reding@gmail.com>
11  - '"Uwe Kleine-König" <u.kleine-koenig@pengutronix.de>'
12
13description: |
14  Google's ChromeOS EC PWM is a simple PWM attached to the Embedded Controller
15  (EC) and controlled via a host-command interface.
16  An EC PWM node should be only found as a sub-node of the EC node (see
17  Documentation/devicetree/bindings/mfd/google,cros-ec.yaml).
18
19allOf:
20  - $ref: pwm.yaml#
21
22properties:
23  compatible:
24    oneOf:
25      - description: PWM controlled using EC_PWM_TYPE_GENERIC channels.
26        items:
27          - const: google,cros-ec-pwm
28      - description: PWM controlled using CROS_EC_PWM_DT_<...> types.
29        items:
30          - const: google,cros-ec-pwm-type
31
32  "#pwm-cells":
33    description: The cell specifies the PWM index.
34    const: 1
35
36required:
37  - compatible
38
39additionalProperties: false
40
41examples:
42  - |
43    spi {
44        #address-cells = <1>;
45        #size-cells = <0>;
46
47        cros-ec@0 {
48            compatible = "google,cros-ec-spi";
49            reg = <0>;
50            interrupts = <101 0>;
51
52            cros_ec_pwm: pwm {
53                compatible = "google,cros-ec-pwm";
54                #pwm-cells = <1>;
55            };
56        };
57    };
58