xref: /freebsd/sys/contrib/device-tree/Bindings/pwm/imx-pwm.yaml (revision cfd6422a5217410fbd66f7a7a8a64d9d85e61229)
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
34  clock-names:
35    items:
36      - const: ipg
37      - const: per
38
39  interrupts:
40    maxItems: 1
41
42required:
43  - "#pwm-cells"
44  - compatible
45  - reg
46  - clocks
47  - clock-names
48  - interrupts
49
50additionalProperties: false
51
52examples:
53  - |
54    #include <dt-bindings/clock/imx5-clock.h>
55
56    pwm@53fb4000 {
57        #pwm-cells = <3>;
58        compatible = "fsl,imx27-pwm";
59        reg = <0x53fb4000 0x4000>;
60        clocks = <&clks IMX5_CLK_PWM1_IPG_GATE>,
61                 <&clks IMX5_CLK_PWM1_HF_GATE>;
62        clock-names = "ipg", "per";
63        interrupts = <61>;
64    };
65