xref: /linux/Documentation/devicetree/bindings/timer/fsl,ftm-timer.yaml (revision 566ab427f827b0256d3e8ce0235d088e6a9c28bd)
1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/timer/fsl,ftm-timer.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Freescale FlexTimer Module (FTM) Timer
8
9maintainers:
10  - Animesh Agarwal <animeshagarwal28@gmail.com>
11
12properties:
13  compatible:
14    const: fsl,ftm-timer
15
16  reg:
17    maxItems: 1
18
19  interrupts:
20    maxItems: 1
21
22  clocks:
23    description: The clocks provided by the SoC to drive the timer, must
24      contain an entry for each entry in clock-names.
25    minItems: 4
26    maxItems: 4
27
28  clock-names:
29    items:
30      - const: ftm-evt
31      - const: ftm-src
32      - const: ftm-evt-counter-en
33      - const: ftm-src-counter-en
34
35  big-endian: true
36
37required:
38  - compatible
39  - reg
40  - interrupts
41  - clocks
42  - clock-names
43
44additionalProperties: false
45
46examples:
47  - |
48    #include <dt-bindings/clock/vf610-clock.h>
49    #include <dt-bindings/interrupt-controller/irq.h>
50
51    ftm@400b8000 {
52        compatible = "fsl,ftm-timer";
53        reg = <0x400b8000 0x1000>;
54        interrupts = <0 44 IRQ_TYPE_LEVEL_HIGH>;
55        clock-names = "ftm-evt", "ftm-src", "ftm-evt-counter-en", "ftm-src-counter-en";
56        clocks = <&clks VF610_CLK_FTM2>, <&clks VF610_CLK_FTM3>,
57            <&clks VF610_CLK_FTM2_EXT_FIX_EN>, <&clks VF610_CLK_FTM3_EXT_FIX_EN>;
58        big-endian;
59    };
60