xref: /linux/Documentation/devicetree/bindings/timer/renesas,mtu2.yaml (revision 4b4193256c8d3bc3a5397b5cd9494c2ad386317d)
1*bc6b83d6SGeert Uytterhoeven# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2*bc6b83d6SGeert Uytterhoeven%YAML 1.2
3*bc6b83d6SGeert Uytterhoeven---
4*bc6b83d6SGeert Uytterhoeven$id: http://devicetree.org/schemas/timer/renesas,mtu2.yaml#
5*bc6b83d6SGeert Uytterhoeven$schema: http://devicetree.org/meta-schemas/core.yaml#
6*bc6b83d6SGeert Uytterhoeven
7*bc6b83d6SGeert Uytterhoeventitle: Renesas Multi-Function Timer Pulse Unit 2 (MTU2)
8*bc6b83d6SGeert Uytterhoeven
9*bc6b83d6SGeert Uytterhoevenmaintainers:
10*bc6b83d6SGeert Uytterhoeven  - Geert Uytterhoeven <geert+renesas@glider.be>
11*bc6b83d6SGeert Uytterhoeven  - Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
12*bc6b83d6SGeert Uytterhoeven
13*bc6b83d6SGeert Uytterhoevendescription:
14*bc6b83d6SGeert Uytterhoeven  The MTU2 is a multi-purpose, multi-channel timer/counter with configurable clock inputs
15*bc6b83d6SGeert Uytterhoeven  and programmable compare match.
16*bc6b83d6SGeert Uytterhoeven
17*bc6b83d6SGeert Uytterhoeven  Channels share hardware resources but their counter and compare match value are
18*bc6b83d6SGeert Uytterhoeven  independent. The MTU2 hardware supports five channels indexed from 0 to 4.
19*bc6b83d6SGeert Uytterhoeven
20*bc6b83d6SGeert Uytterhoevenproperties:
21*bc6b83d6SGeert Uytterhoeven  compatible:
22*bc6b83d6SGeert Uytterhoeven    items:
23*bc6b83d6SGeert Uytterhoeven      - enum:
24*bc6b83d6SGeert Uytterhoeven          - renesas,mtu2-r7s72100 # RZ/A1H
25*bc6b83d6SGeert Uytterhoeven      - const: renesas,mtu2
26*bc6b83d6SGeert Uytterhoeven
27*bc6b83d6SGeert Uytterhoeven  reg:
28*bc6b83d6SGeert Uytterhoeven    maxItems: 1
29*bc6b83d6SGeert Uytterhoeven
30*bc6b83d6SGeert Uytterhoeven  interrupts:
31*bc6b83d6SGeert Uytterhoeven    minItems: 1
32*bc6b83d6SGeert Uytterhoeven    maxItems: 5
33*bc6b83d6SGeert Uytterhoeven    description: One entry for each enabled channel.
34*bc6b83d6SGeert Uytterhoeven
35*bc6b83d6SGeert Uytterhoeven  interrupt-names:
36*bc6b83d6SGeert Uytterhoeven    minItems: 1
37*bc6b83d6SGeert Uytterhoeven    items:
38*bc6b83d6SGeert Uytterhoeven      - const: tgi0a
39*bc6b83d6SGeert Uytterhoeven      - const: tgi1a
40*bc6b83d6SGeert Uytterhoeven      - const: tgi2a
41*bc6b83d6SGeert Uytterhoeven      - const: tgi3a
42*bc6b83d6SGeert Uytterhoeven      - const: tgi4a
43*bc6b83d6SGeert Uytterhoeven
44*bc6b83d6SGeert Uytterhoeven  clocks:
45*bc6b83d6SGeert Uytterhoeven    maxItems: 1
46*bc6b83d6SGeert Uytterhoeven
47*bc6b83d6SGeert Uytterhoeven  clock-names:
48*bc6b83d6SGeert Uytterhoeven    const: fck
49*bc6b83d6SGeert Uytterhoeven
50*bc6b83d6SGeert Uytterhoeven  power-domains:
51*bc6b83d6SGeert Uytterhoeven    maxItems: 1
52*bc6b83d6SGeert Uytterhoeven
53*bc6b83d6SGeert Uytterhoevenrequired:
54*bc6b83d6SGeert Uytterhoeven  - compatible
55*bc6b83d6SGeert Uytterhoeven  - reg
56*bc6b83d6SGeert Uytterhoeven  - interrupts
57*bc6b83d6SGeert Uytterhoeven  - interrupt-names
58*bc6b83d6SGeert Uytterhoeven  - clocks
59*bc6b83d6SGeert Uytterhoeven  - clock-names
60*bc6b83d6SGeert Uytterhoeven  - power-domains
61*bc6b83d6SGeert Uytterhoeven
62*bc6b83d6SGeert UytterhoevenadditionalProperties: false
63*bc6b83d6SGeert Uytterhoeven
64*bc6b83d6SGeert Uytterhoevenexamples:
65*bc6b83d6SGeert Uytterhoeven  - |
66*bc6b83d6SGeert Uytterhoeven    #include <dt-bindings/clock/r7s72100-clock.h>
67*bc6b83d6SGeert Uytterhoeven    #include <dt-bindings/interrupt-controller/arm-gic.h>
68*bc6b83d6SGeert Uytterhoeven    mtu2: timer@fcff0000 {
69*bc6b83d6SGeert Uytterhoeven            compatible = "renesas,mtu2-r7s72100", "renesas,mtu2";
70*bc6b83d6SGeert Uytterhoeven            reg = <0xfcff0000 0x400>;
71*bc6b83d6SGeert Uytterhoeven            interrupts = <GIC_SPI 107 IRQ_TYPE_LEVEL_HIGH>;
72*bc6b83d6SGeert Uytterhoeven            interrupt-names = "tgi0a";
73*bc6b83d6SGeert Uytterhoeven            clocks = <&mstp3_clks R7S72100_CLK_MTU2>;
74*bc6b83d6SGeert Uytterhoeven            clock-names = "fck";
75*bc6b83d6SGeert Uytterhoeven            power-domains = <&cpg_clocks>;
76*bc6b83d6SGeert Uytterhoeven    };
77