1# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 2%YAML 1.2 3--- 4$id: http://devicetree.org/schemas/watchdog/realtek,otto-wdt.yaml# 5$schema: http://devicetree.org/meta-schemas/core.yaml# 6 7title: Realtek Otto watchdog timer 8 9maintainers: 10 - Sander Vanheule <sander@svanheule.net> 11 12description: | 13 The timer has two timeout phases. Both phases have a maximum duration of 32 14 prescaled clock ticks, which is ca. 43s with a bus clock of 200MHz. The 15 minimum duration of each phase is one tick. Each phase can trigger an 16 interrupt, although the phase 2 interrupt will occur with the system reset. 17 - Phase 1: During this phase, the WDT can be pinged to reset the timeout. 18 - Phase 2: Starts after phase 1 has timed out, and only serves to give the 19 system some time to clean up, or notify others that it's going to reset. 20 During this phase, pinging the WDT has no effect, and a reset is 21 unavoidable, unless the WDT is disabled. 22 23allOf: 24 - $ref: watchdog.yaml# 25 26properties: 27 compatible: 28 enum: 29 - realtek,rtl8380-wdt 30 - realtek,rtl8390-wdt 31 - realtek,rtl9300-wdt 32 33 reg: 34 maxItems: 1 35 36 clocks: 37 maxItems: 1 38 39 interrupts: 40 items: 41 - description: interrupt specifier for pretimeout 42 - description: interrupt specifier for timeout 43 44 interrupt-names: 45 items: 46 - const: phase1 47 - const: phase2 48 49 realtek,reset-mode: 50 $ref: /schemas/types.yaml#/definitions/string 51 description: | 52 Specify how the system is reset after a timeout. Defaults to "cpu" if 53 left unspecified. 54 oneOf: 55 - description: Reset the entire chip 56 const: soc 57 - description: | 58 Reset the CPU and IPsec engine, but leave other peripherals untouched 59 const: cpu 60 - description: | 61 Reset the execution pointer, but don't actually reset any hardware 62 const: software 63 64required: 65 - compatible 66 - reg 67 - clocks 68 - interrupts 69 70unevaluatedProperties: false 71 72dependencies: 73 interrupts: [ interrupt-names ] 74 75examples: 76 - | 77 watchdog: watchdog@3150 { 78 compatible = "realtek,rtl8380-wdt"; 79 reg = <0x3150 0xc>; 80 81 realtek,reset-mode = "soc"; 82 83 clocks = <&lxbus_clock>; 84 timeout-sec = <20>; 85 86 interrupt-parent = <&rtlintc>; 87 interrupt-names = "phase1", "phase2"; 88 interrupts = <19>, <18>; 89 }; 90 91... 92