xref: /freebsd/sys/contrib/device-tree/Bindings/timer/mediatek,mtk-timer.txt (revision cb7aa33ac6cd46a5434798e50363136e64f3ae98)
1c66ec88fSEmmanuel VadotMediaTek Timers
2c66ec88fSEmmanuel Vadot---------------
3c66ec88fSEmmanuel Vadot
4b97ee269SEmmanuel VadotMediaTek SoCs have different timers on different platforms,
5b97ee269SEmmanuel Vadot- CPUX (ARM/ARM64 System Timer)
6c66ec88fSEmmanuel Vadot- GPT (General Purpose Timer)
7c66ec88fSEmmanuel Vadot- SYST (System Timer)
8c66ec88fSEmmanuel Vadot
9c66ec88fSEmmanuel VadotThe proper timer will be selected automatically by driver.
10c66ec88fSEmmanuel Vadot
11c66ec88fSEmmanuel VadotRequired properties:
12c66ec88fSEmmanuel Vadot- compatible should contain:
13c66ec88fSEmmanuel Vadot	For those SoCs that use GPT
14c66ec88fSEmmanuel Vadot	* "mediatek,mt2701-timer" for MT2701 compatible timers (GPT)
15c66ec88fSEmmanuel Vadot	* "mediatek,mt6580-timer" for MT6580 compatible timers (GPT)
16c9ccf3a3SEmmanuel Vadot	* "mediatek,mt6582-timer" for MT6582 compatible timers (GPT)
17c66ec88fSEmmanuel Vadot	* "mediatek,mt6589-timer" for MT6589 compatible timers (GPT)
18c66ec88fSEmmanuel Vadot	* "mediatek,mt7623-timer" for MT7623 compatible timers (GPT)
19c66ec88fSEmmanuel Vadot	* "mediatek,mt8127-timer" for MT8127 compatible timers (GPT)
20c66ec88fSEmmanuel Vadot	* "mediatek,mt8135-timer" for MT8135 compatible timers (GPT)
21c66ec88fSEmmanuel Vadot	* "mediatek,mt8173-timer" for MT8173 compatible timers (GPT)
22c66ec88fSEmmanuel Vadot	* "mediatek,mt8516-timer" for MT8516 compatible timers (GPT)
23c66ec88fSEmmanuel Vadot	* "mediatek,mt6577-timer" for MT6577 and all above compatible timers (GPT)
24c66ec88fSEmmanuel Vadot
25c66ec88fSEmmanuel Vadot	For those SoCs that use SYST
26c66ec88fSEmmanuel Vadot	* "mediatek,mt8183-timer" for MT8183 compatible timers (SYST)
27d5b0e70fSEmmanuel Vadot	* "mediatek,mt8186-timer" for MT8186 compatible timers (SYST)
287ef62cebSEmmanuel Vadot	* "mediatek,mt8188-timer" for MT8188 compatible timers (SYST)
296be33864SEmmanuel Vadot	* "mediatek,mt8192-timer" for MT8192 compatible timers (SYST)
302eb4d8dcSEmmanuel Vadot	* "mediatek,mt8195-timer" for MT8195 compatible timers (SYST)
31c66ec88fSEmmanuel Vadot	* "mediatek,mt7629-timer" for MT7629 compatible timers (SYST)
32c66ec88fSEmmanuel Vadot	* "mediatek,mt6765-timer" for MT6765 and all above compatible timers (SYST)
33c66ec88fSEmmanuel Vadot
34b97ee269SEmmanuel Vadot	For those SoCs that use CPUX
35b97ee269SEmmanuel Vadot	* "mediatek,mt6795-systimer" for MT6795 compatible timers (CPUX)
36*cb7aa33aSEmmanuel Vadot	* "mediatek,mt8365-systimer" for MT8365 compatible timers (CPUX)
37b97ee269SEmmanuel Vadot
38c66ec88fSEmmanuel Vadot- reg: Should contain location and length for timer register.
39c66ec88fSEmmanuel Vadot- clocks: Should contain system clock.
40c66ec88fSEmmanuel Vadot
41c66ec88fSEmmanuel VadotExamples:
42c66ec88fSEmmanuel Vadot
43c66ec88fSEmmanuel Vadot	timer@10008000 {
44c66ec88fSEmmanuel Vadot		compatible = "mediatek,mt6577-timer";
45c66ec88fSEmmanuel Vadot		reg = <0x10008000 0x80>;
46c66ec88fSEmmanuel Vadot		interrupts = <GIC_SPI 113 IRQ_TYPE_LEVEL_LOW>;
47c66ec88fSEmmanuel Vadot		clocks = <&system_clk>;
48c66ec88fSEmmanuel Vadot	};
49