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