xref: /freebsd/sys/contrib/device-tree/Bindings/timer/renesas,tmu.txt (revision c66ec88fed842fbaad62c30d510644ceb7bd2d71)
1*c66ec88fSEmmanuel Vadot* Renesas R-Mobile/R-Car Timer Unit (TMU)
2*c66ec88fSEmmanuel Vadot
3*c66ec88fSEmmanuel VadotThe TMU is a 32-bit timer/counter with configurable clock inputs and
4*c66ec88fSEmmanuel Vadotprogrammable compare match.
5*c66ec88fSEmmanuel Vadot
6*c66ec88fSEmmanuel VadotChannels share hardware resources but their counter and compare match value
7*c66ec88fSEmmanuel Vadotare independent. The TMU hardware supports up to three channels.
8*c66ec88fSEmmanuel Vadot
9*c66ec88fSEmmanuel VadotRequired Properties:
10*c66ec88fSEmmanuel Vadot
11*c66ec88fSEmmanuel Vadot  - compatible: must contain one or more of the following:
12*c66ec88fSEmmanuel Vadot    - "renesas,tmu-r8a7740" for the r8a7740 TMU
13*c66ec88fSEmmanuel Vadot    - "renesas,tmu-r8a774a1" for the r8a774A1 TMU
14*c66ec88fSEmmanuel Vadot    - "renesas,tmu-r8a774b1" for the r8a774B1 TMU
15*c66ec88fSEmmanuel Vadot    - "renesas,tmu-r8a774c0" for the r8a774C0 TMU
16*c66ec88fSEmmanuel Vadot    - "renesas,tmu-r8a7778" for the r8a7778 TMU
17*c66ec88fSEmmanuel Vadot    - "renesas,tmu-r8a7779" for the r8a7779 TMU
18*c66ec88fSEmmanuel Vadot    - "renesas,tmu-r8a77970" for the r8a77970 TMU
19*c66ec88fSEmmanuel Vadot    - "renesas,tmu-r8a77980" for the r8a77980 TMU
20*c66ec88fSEmmanuel Vadot    - "renesas,tmu" for any TMU.
21*c66ec88fSEmmanuel Vadot      This is a fallback for the above renesas,tmu-* entries
22*c66ec88fSEmmanuel Vadot
23*c66ec88fSEmmanuel Vadot  - reg: base address and length of the registers block for the timer module.
24*c66ec88fSEmmanuel Vadot
25*c66ec88fSEmmanuel Vadot  - interrupts: interrupt-specifier for the timer, one per channel.
26*c66ec88fSEmmanuel Vadot
27*c66ec88fSEmmanuel Vadot  - clocks: a list of phandle + clock-specifier pairs, one for each entry
28*c66ec88fSEmmanuel Vadot    in clock-names.
29*c66ec88fSEmmanuel Vadot  - clock-names: must contain "fck" for the functional clock.
30*c66ec88fSEmmanuel Vadot
31*c66ec88fSEmmanuel VadotOptional Properties:
32*c66ec88fSEmmanuel Vadot
33*c66ec88fSEmmanuel Vadot  - #renesas,channels: number of channels implemented by the timer, must be 2
34*c66ec88fSEmmanuel Vadot    or 3 (if not specified the value defaults to 3).
35*c66ec88fSEmmanuel Vadot
36*c66ec88fSEmmanuel Vadot
37*c66ec88fSEmmanuel VadotExample: R8A7779 (R-Car H1) TMU0 node
38*c66ec88fSEmmanuel Vadot
39*c66ec88fSEmmanuel Vadot	tmu0: timer@ffd80000 {
40*c66ec88fSEmmanuel Vadot		compatible = "renesas,tmu-r8a7779", "renesas,tmu";
41*c66ec88fSEmmanuel Vadot		reg = <0xffd80000 0x30>;
42*c66ec88fSEmmanuel Vadot		interrupts = <0 32 IRQ_TYPE_LEVEL_HIGH>,
43*c66ec88fSEmmanuel Vadot			     <0 33 IRQ_TYPE_LEVEL_HIGH>,
44*c66ec88fSEmmanuel Vadot			     <0 34 IRQ_TYPE_LEVEL_HIGH>;
45*c66ec88fSEmmanuel Vadot		clocks = <&mstp0_clks R8A7779_CLK_TMU0>;
46*c66ec88fSEmmanuel Vadot		clock-names = "fck";
47*c66ec88fSEmmanuel Vadot
48*c66ec88fSEmmanuel Vadot		#renesas,channels = <3>;
49*c66ec88fSEmmanuel Vadot	};
50