1dc1f12b9SSrinivas Neeli# SPDX-License-Identifier: GPL-2.0-or-later OR BSD-2-Clause
2dc1f12b9SSrinivas Neeli%YAML 1.2
3dc1f12b9SSrinivas Neeli---
4dc1f12b9SSrinivas Neeli$id: http://devicetree.org/schemas/watchdog/xlnx,xps-timebase-wdt.yaml#
5dc1f12b9SSrinivas Neeli$schema: http://devicetree.org/meta-schemas/core.yaml#
6dc1f12b9SSrinivas Neeli
7dc1f12b9SSrinivas Neelititle: Xilinx AXI/PLB softcore and window Watchdog Timer
8dc1f12b9SSrinivas Neeli
9dc1f12b9SSrinivas Neelimaintainers:
10*d5c421d2SMichal Simek  - Shubhrajyoti Datta <shubhrajyoti.datta@amd.com>
11*d5c421d2SMichal Simek  - Srinivas Neeli <srinivas.neeli@amd.com>
12dc1f12b9SSrinivas Neeli
13dc1f12b9SSrinivas Neelidescription:
14dc1f12b9SSrinivas Neeli  The Timebase watchdog timer(WDT) is a free-running 32 bit counter.
15dc1f12b9SSrinivas Neeli  WDT uses a dual-expiration architecture. After one expiration of
16dc1f12b9SSrinivas Neeli  the timeout interval, an interrupt is generated and the WDT state
17dc1f12b9SSrinivas Neeli  bit is set to one in the status register. If the state bit is not
18dc1f12b9SSrinivas Neeli  cleared (by writing a one to the state bit) before the next
19dc1f12b9SSrinivas Neeli  expiration of the timeout interval, a WDT reset is generated.
20dc1f12b9SSrinivas Neeli
21dc1f12b9SSrinivas NeeliallOf:
22dc1f12b9SSrinivas Neeli  - $ref: watchdog.yaml#
23dc1f12b9SSrinivas Neeli
24dc1f12b9SSrinivas Neeliproperties:
25dc1f12b9SSrinivas Neeli  compatible:
26dc1f12b9SSrinivas Neeli    enum:
27dc1f12b9SSrinivas Neeli      - xlnx,xps-timebase-wdt-1.01.a
28dc1f12b9SSrinivas Neeli      - xlnx,xps-timebase-wdt-1.00.a
29dc1f12b9SSrinivas Neeli
30dc1f12b9SSrinivas Neeli  reg:
31dc1f12b9SSrinivas Neeli    maxItems: 1
32dc1f12b9SSrinivas Neeli
33dc1f12b9SSrinivas Neeli  clocks:
34dc1f12b9SSrinivas Neeli    maxItems: 1
35dc1f12b9SSrinivas Neeli
36dc1f12b9SSrinivas Neeli  clock-frequency:
37dc1f12b9SSrinivas Neeli    description: Frequency of clock in Hz
38dc1f12b9SSrinivas Neeli
39dc1f12b9SSrinivas Neeli  xlnx,wdt-interval:
40dc1f12b9SSrinivas Neeli    $ref: /schemas/types.yaml#/definitions/uint32
41dc1f12b9SSrinivas Neeli    description: Watchdog timeout interval
42dc1f12b9SSrinivas Neeli    minimum: 8
43dc1f12b9SSrinivas Neeli    maximum: 32
44dc1f12b9SSrinivas Neeli
45dc1f12b9SSrinivas Neeli  xlnx,wdt-enable-once:
46dc1f12b9SSrinivas Neeli    $ref: /schemas/types.yaml#/definitions/uint32
47dc1f12b9SSrinivas Neeli    enum: [0, 1]
48dc1f12b9SSrinivas Neeli    description: If watchdog is configured as enable once,
49dc1f12b9SSrinivas Neeli                 then the watchdog cannot be disabled after
50dc1f12b9SSrinivas Neeli                 it has been enabled.
51dc1f12b9SSrinivas Neeli
52dc1f12b9SSrinivas Neelirequired:
53dc1f12b9SSrinivas Neeli  - compatible
54dc1f12b9SSrinivas Neeli  - reg
55dc1f12b9SSrinivas Neeli
56dc1f12b9SSrinivas NeeliunevaluatedProperties: false
57dc1f12b9SSrinivas Neeli
58dc1f12b9SSrinivas Neeliexamples:
59dc1f12b9SSrinivas Neeli  - |
60dc1f12b9SSrinivas Neeli    watchdog@40100000 {
61dc1f12b9SSrinivas Neeli        compatible = "xlnx,xps-timebase-wdt-1.00.a";
62dc1f12b9SSrinivas Neeli        reg = <0x40100000 0x1000>;
63dc1f12b9SSrinivas Neeli        clock-frequency = <50000000>;
64dc1f12b9SSrinivas Neeli        clocks = <&clkc 15>;
65dc1f12b9SSrinivas Neeli        xlnx,wdt-enable-once = <0x0>;
66dc1f12b9SSrinivas Neeli        xlnx,wdt-interval = <0x1b>;
67dc1f12b9SSrinivas Neeli    };
68dc1f12b9SSrinivas Neeli...
69