xref: /linux/Documentation/devicetree/bindings/timer/via,vt8500-timer.yaml (revision 69f2970aad93758bea863432e49b564e0ba649ca) !
1*b06d6a1dSAlexey Charkov# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2*b06d6a1dSAlexey Charkov%YAML 1.2
3*b06d6a1dSAlexey Charkov---
4*b06d6a1dSAlexey Charkov$id: http://devicetree.org/schemas/timer/via,vt8500-timer.yaml#
5*b06d6a1dSAlexey Charkov$schema: http://devicetree.org/meta-schemas/core.yaml#
6*b06d6a1dSAlexey Charkov
7*b06d6a1dSAlexey Charkovtitle: VIA/Wondermedia VT8500 Timer
8*b06d6a1dSAlexey Charkov
9*b06d6a1dSAlexey Charkovdescription:
10*b06d6a1dSAlexey Charkov  This is the timer block that is a standalone part of the system power
11*b06d6a1dSAlexey Charkov  management controller on VIA/WonderMedia SoCs (VIA VT8500 and alike).
12*b06d6a1dSAlexey Charkov  The hardware has a single 32-bit counter running at 3 MHz and four match
13*b06d6a1dSAlexey Charkov  registers, each of which is associated with a dedicated match interrupt,
14*b06d6a1dSAlexey Charkov  and the first of which can also serve as the system watchdog (if the
15*b06d6a1dSAlexey Charkov  watchdog function is enabled, it will reset the system upon match instead
16*b06d6a1dSAlexey Charkov  of triggering its respective interrupt)
17*b06d6a1dSAlexey Charkov
18*b06d6a1dSAlexey Charkovmaintainers:
19*b06d6a1dSAlexey Charkov  - Alexey Charkov <alchark@gmail.com>
20*b06d6a1dSAlexey Charkov
21*b06d6a1dSAlexey Charkovproperties:
22*b06d6a1dSAlexey Charkov  compatible:
23*b06d6a1dSAlexey Charkov    const: via,vt8500-timer
24*b06d6a1dSAlexey Charkov
25*b06d6a1dSAlexey Charkov  reg:
26*b06d6a1dSAlexey Charkov    maxItems: 1
27*b06d6a1dSAlexey Charkov
28*b06d6a1dSAlexey Charkov  interrupts:
29*b06d6a1dSAlexey Charkov    minItems: 1
30*b06d6a1dSAlexey Charkov    items:
31*b06d6a1dSAlexey Charkov      - description: Channel 0 match. Note that if the watchdog function
32*b06d6a1dSAlexey Charkov          is enabled, this interrupt will not fire and the system will
33*b06d6a1dSAlexey Charkov          reboot instead once the counter reaches match register 0 value
34*b06d6a1dSAlexey Charkov      - description: Channel 1 match
35*b06d6a1dSAlexey Charkov      - description: Channel 2 match
36*b06d6a1dSAlexey Charkov      - description: Channel 3 match
37*b06d6a1dSAlexey Charkov
38*b06d6a1dSAlexey Charkovrequired:
39*b06d6a1dSAlexey Charkov  - compatible
40*b06d6a1dSAlexey Charkov  - reg
41*b06d6a1dSAlexey Charkov  - interrupts
42*b06d6a1dSAlexey Charkov
43*b06d6a1dSAlexey CharkovadditionalProperties: false
44*b06d6a1dSAlexey Charkov
45*b06d6a1dSAlexey Charkovexamples:
46*b06d6a1dSAlexey Charkov  - |
47*b06d6a1dSAlexey Charkov    timer@d8130100 {
48*b06d6a1dSAlexey Charkov        compatible = "via,vt8500-timer";
49*b06d6a1dSAlexey Charkov        reg = <0xd8130100 0x28>;
50*b06d6a1dSAlexey Charkov        interrupts = <36>;
51*b06d6a1dSAlexey Charkov    };
52