1*fac71e4eSEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2*fac71e4eSEmmanuel Vadot%YAML 1.2 3*fac71e4eSEmmanuel Vadot--- 4*fac71e4eSEmmanuel Vadot$id: http://devicetree.org/schemas/watchdog/starfive,jh7100-wdt.yaml# 5*fac71e4eSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 6*fac71e4eSEmmanuel Vadot 7*fac71e4eSEmmanuel Vadottitle: StarFive Watchdog for JH7100 and JH7110 SoC 8*fac71e4eSEmmanuel Vadot 9*fac71e4eSEmmanuel Vadotmaintainers: 10*fac71e4eSEmmanuel Vadot - Xingyu Wu <xingyu.wu@starfivetech.com> 11*fac71e4eSEmmanuel Vadot - Samin Guo <samin.guo@starfivetech.com> 12*fac71e4eSEmmanuel Vadot 13*fac71e4eSEmmanuel Vadotdescription: 14*fac71e4eSEmmanuel Vadot The JH7100 and JH7110 watchdog both are 32 bit counters. JH7100 watchdog 15*fac71e4eSEmmanuel Vadot has only one timeout phase and reboots. And JH7110 watchdog has two 16*fac71e4eSEmmanuel Vadot timeout phases. At the first phase, the signal of watchdog interrupt 17*fac71e4eSEmmanuel Vadot output(WDOGINT) will rise when counter is 0. The counter will reload 18*fac71e4eSEmmanuel Vadot the timeout value. And then, if counter decreases to 0 again and WDOGINT 19*fac71e4eSEmmanuel Vadot isn't cleared, the watchdog will reset the system unless the watchdog 20*fac71e4eSEmmanuel Vadot reset is disabled. 21*fac71e4eSEmmanuel Vadot 22*fac71e4eSEmmanuel VadotallOf: 23*fac71e4eSEmmanuel Vadot - $ref: watchdog.yaml# 24*fac71e4eSEmmanuel Vadot 25*fac71e4eSEmmanuel Vadotproperties: 26*fac71e4eSEmmanuel Vadot compatible: 27*fac71e4eSEmmanuel Vadot enum: 28*fac71e4eSEmmanuel Vadot - starfive,jh7100-wdt 29*fac71e4eSEmmanuel Vadot - starfive,jh7110-wdt 30*fac71e4eSEmmanuel Vadot 31*fac71e4eSEmmanuel Vadot reg: 32*fac71e4eSEmmanuel Vadot maxItems: 1 33*fac71e4eSEmmanuel Vadot 34*fac71e4eSEmmanuel Vadot interrupts: 35*fac71e4eSEmmanuel Vadot maxItems: 1 36*fac71e4eSEmmanuel Vadot 37*fac71e4eSEmmanuel Vadot clocks: 38*fac71e4eSEmmanuel Vadot items: 39*fac71e4eSEmmanuel Vadot - description: APB clock 40*fac71e4eSEmmanuel Vadot - description: Core clock 41*fac71e4eSEmmanuel Vadot 42*fac71e4eSEmmanuel Vadot clock-names: 43*fac71e4eSEmmanuel Vadot items: 44*fac71e4eSEmmanuel Vadot - const: apb 45*fac71e4eSEmmanuel Vadot - const: core 46*fac71e4eSEmmanuel Vadot 47*fac71e4eSEmmanuel Vadot resets: 48*fac71e4eSEmmanuel Vadot items: 49*fac71e4eSEmmanuel Vadot - description: APB reset 50*fac71e4eSEmmanuel Vadot - description: Core reset 51*fac71e4eSEmmanuel Vadot 52*fac71e4eSEmmanuel Vadotrequired: 53*fac71e4eSEmmanuel Vadot - compatible 54*fac71e4eSEmmanuel Vadot - reg 55*fac71e4eSEmmanuel Vadot - clocks 56*fac71e4eSEmmanuel Vadot - clock-names 57*fac71e4eSEmmanuel Vadot - resets 58*fac71e4eSEmmanuel Vadot 59*fac71e4eSEmmanuel VadotunevaluatedProperties: false 60*fac71e4eSEmmanuel Vadot 61*fac71e4eSEmmanuel Vadotexamples: 62*fac71e4eSEmmanuel Vadot - | 63*fac71e4eSEmmanuel Vadot watchdog@12480000 { 64*fac71e4eSEmmanuel Vadot compatible = "starfive,jh7100-wdt"; 65*fac71e4eSEmmanuel Vadot reg = <0x12480000 0x10000>; 66*fac71e4eSEmmanuel Vadot clocks = <&clk 171>, 67*fac71e4eSEmmanuel Vadot <&clk 172>; 68*fac71e4eSEmmanuel Vadot clock-names = "apb", "core"; 69*fac71e4eSEmmanuel Vadot resets = <&rst 99>, 70*fac71e4eSEmmanuel Vadot <&rst 100>; 71*fac71e4eSEmmanuel Vadot }; 72