1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/pwm/imx-pwm.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Freescale i.MX PWM controller
8
9maintainers:
10  - Philipp Zabel <p.zabel@pengutronix.de>
11
12properties:
13  "#pwm-cells":
14    description: |
15      Should be 2 for i.MX1 and 3 for i.MX27 and newer SoCs. See pwm.yaml
16      in this directory for a description of the cells format.
17    enum:
18      - 2
19      - 3
20
21  compatible:
22    enum:
23      - fsl,imx1-pwm
24      - fsl,imx27-pwm
25
26  reg:
27    maxItems: 1
28
29  clocks:
30    items:
31      - description: SoC PWM ipg clock
32      - description: SoC PWM per clock
33    maxItems: 2
34
35  clock-names:
36    items:
37      - const: ipg
38      - const: per
39    maxItems: 2
40
41  interrupts:
42    maxItems: 1
43
44required:
45  - "#pwm-cells"
46  - compatible
47  - reg
48  - clocks
49  - clock-names
50  - interrupts
51
52additionalProperties: false
53
54examples:
55  - |
56    #include <dt-bindings/clock/imx5-clock.h>
57
58    pwm@53fb4000 {
59        #pwm-cells = <3>;
60        compatible = "fsl,imx27-pwm";
61        reg = <0x53fb4000 0x4000>;
62        clocks = <&clks IMX5_CLK_PWM1_IPG_GATE>,
63                 <&clks IMX5_CLK_PWM1_HF_GATE>;
64        clock-names = "ipg", "per";
65        interrupts = <61>;
66    };
67