ffd24a543a
In general Renesas hardware is not documented to the extent where the relationship between IP blocks on different SoCs can be assumed although they may appear to operate the same way. Furthermore the documentation typically does not specify a version for individual IP blocks. For these reasons a convention of using the SoC name in place of a version and providing SoC-specific compat strings has been adopted. Although not universally liked this convention is used in the bindings for a number of drivers for Renesas hardware. The purpose of this patch is to update the Renesas R-Car Multi-Function Timer Pulse Unit 2 (MTU2) driver to follow this convention. Signed-off-by: Simon Horman <horms+renesas@verge.net.au> Acked-by: Geert Uytterhoeven <geert+renesas@glider.be> Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> --- * I plan to follow up with a patch patch to use the new binding in the dtsi files for the r7s72100 SoC. v2 * Suggestions by Mark Rutland and Sergei Shtylyov - Compatible strings should be "one or more" not "one" of those listed - Describe the generic binding as covering any MTU2 device - Re-order compat strings from most to least specific v3 * Suggested by Laurent Pinchart - Reword compat documentation for consistency with a more extensive CMT change
43 lines
1.5 KiB
Plaintext
43 lines
1.5 KiB
Plaintext
* Renesas R-Car Multi-Function Timer Pulse Unit 2 (MTU2)
|
|
|
|
The MTU2 is a multi-purpose, multi-channel timer/counter with configurable
|
|
clock inputs and programmable compare match.
|
|
|
|
Channels share hardware resources but their counter and compare match value
|
|
are independent. The MTU2 hardware supports five channels indexed from 0 to 4.
|
|
|
|
Required Properties:
|
|
|
|
- compatible: must be one or more of the following:
|
|
- "renesas,mtu2-r7s72100" for the r7s72100 MTU2
|
|
- "renesas,mtu2" for any MTU2
|
|
This is a fallback for the above renesas,mtu2-* entries
|
|
|
|
- reg: base address and length of the registers block for the timer module.
|
|
|
|
- interrupts: interrupt specifiers for the timer, one for each entry in
|
|
interrupt-names.
|
|
- interrupt-names: must contain one entry named "tgi?a" for each enabled
|
|
channel, where "?" is the channel index expressed as one digit from "0" to
|
|
"4".
|
|
|
|
- clocks: a list of phandle + clock-specifier pairs, one for each entry
|
|
in clock-names.
|
|
- clock-names: must contain "fck" for the functional clock.
|
|
|
|
|
|
Example: R7S72100 (RZ/A1H) MTU2 node
|
|
|
|
mtu2: timer@fcff0000 {
|
|
compatible = "renesas,mtu2-r7s72100", "renesas,mtu2";
|
|
reg = <0xfcff0000 0x400>;
|
|
interrupts = <0 139 IRQ_TYPE_LEVEL_HIGH>,
|
|
<0 146 IRQ_TYPE_LEVEL_HIGH>,
|
|
<0 150 IRQ_TYPE_LEVEL_HIGH>,
|
|
<0 154 IRQ_TYPE_LEVEL_HIGH>,
|
|
<0 159 IRQ_TYPE_LEVEL_HIGH>;
|
|
interrupt-names = "tgi0a", "tgi1a", "tgi2a", "tgi3a", "tgi4a";
|
|
clocks = <&mstp3_clks R7S72100_CLK_MTU2>;
|
|
clock-names = "fck";
|
|
};
|