xref: /freebsd/sys/contrib/device-tree/Bindings/timer/snps,arc-timer.txt (revision aa1a8ff2d6dbc51ef058f46f3db5a8bb77967145)
1c66ec88fSEmmanuel VadotSynopsys ARC Local Timer with Interrupt Capabilities
2c66ec88fSEmmanuel Vadot- Found on all ARC CPUs (ARC700/ARCHS)
3c66ec88fSEmmanuel Vadot- Can be optionally programmed to interrupt on Limit
4*aa1a8ff2SEmmanuel Vadot- Two identical copies TIMER0 and TIMER1 exist in ARC cores and historically
5c66ec88fSEmmanuel Vadot  TIMER0 used as clockevent provider (true for all ARC cores)
6c66ec88fSEmmanuel Vadot  TIMER1 used for clocksource (mandatory for ARC700, optional for ARC HS)
7c66ec88fSEmmanuel Vadot
8c66ec88fSEmmanuel VadotRequired properties:
9c66ec88fSEmmanuel Vadot
10c66ec88fSEmmanuel Vadot- compatible : should be "snps,arc-timer"
11c66ec88fSEmmanuel Vadot- interrupts : single Interrupt going into parent intc
12c66ec88fSEmmanuel Vadot	       (16 for ARCHS cores, 3 for ARC700 cores)
13c66ec88fSEmmanuel Vadot- clocks     : phandle to the source clock
14c66ec88fSEmmanuel Vadot
15c66ec88fSEmmanuel VadotExample:
16c66ec88fSEmmanuel Vadot
17c66ec88fSEmmanuel Vadot	timer0 {
18c66ec88fSEmmanuel Vadot		compatible = "snps,arc-timer";
19c66ec88fSEmmanuel Vadot		interrupts = <3>;
20c66ec88fSEmmanuel Vadot		interrupt-parent = <&core_intc>;
21c66ec88fSEmmanuel Vadot		clocks = <&core_clk>;
22c66ec88fSEmmanuel Vadot	};
23c66ec88fSEmmanuel Vadot
24c66ec88fSEmmanuel Vadot	timer1 {
25c66ec88fSEmmanuel Vadot		compatible = "snps,arc-timer";
26c66ec88fSEmmanuel Vadot		clocks = <&core_clk>;
27c66ec88fSEmmanuel Vadot	};
28