1*13b19169SEugen Hristev# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2*13b19169SEugen Hristev%YAML 1.2 3*13b19169SEugen Hristev--- 4*13b19169SEugen Hristev$id: http://devicetree.org/schemas/watchdog/atmel,sama5d4-wdt.yaml# 5*13b19169SEugen Hristev$schema: http://devicetree.org/meta-schemas/core.yaml# 6*13b19169SEugen Hristev 7*13b19169SEugen Hristevtitle: Atmel SAMA5D4 Watchdog Timer (WDT) Controller 8*13b19169SEugen Hristev 9*13b19169SEugen Hristevmaintainers: 10*13b19169SEugen Hristev - Eugen Hristev <eugen.hristev@microchip.com> 11*13b19169SEugen Hristev 12*13b19169SEugen HristevallOf: 13*13b19169SEugen Hristev - $ref: "watchdog.yaml#" 14*13b19169SEugen Hristev 15*13b19169SEugen Hristevproperties: 16*13b19169SEugen Hristev compatible: 17*13b19169SEugen Hristev enum: 18*13b19169SEugen Hristev - atmel,sama5d4-wdt 19*13b19169SEugen Hristev - microchip,sam9x60-wdt 20*13b19169SEugen Hristev 21*13b19169SEugen Hristev reg: 22*13b19169SEugen Hristev maxItems: 1 23*13b19169SEugen Hristev 24*13b19169SEugen Hristev atmel,watchdog-type: 25*13b19169SEugen Hristev $ref: /schemas/types.yaml#/definitions/string 26*13b19169SEugen Hristev description: should be hardware or software. 27*13b19169SEugen Hristev oneOf: 28*13b19169SEugen Hristev - description: 29*13b19169SEugen Hristev Enable watchdog fault reset. A watchdog fault triggers 30*13b19169SEugen Hristev watchdog reset. 31*13b19169SEugen Hristev const: hardware 32*13b19169SEugen Hristev - description: 33*13b19169SEugen Hristev Enable watchdog fault interrupt. A watchdog fault asserts 34*13b19169SEugen Hristev watchdog interrupt. 35*13b19169SEugen Hristev const: software 36*13b19169SEugen Hristev default: hardware 37*13b19169SEugen Hristev 38*13b19169SEugen Hristev atmel,idle-halt: 39*13b19169SEugen Hristev $ref: /schemas/types.yaml#/definitions/flag 40*13b19169SEugen Hristev description: | 41*13b19169SEugen Hristev present if you want to stop the watchdog when the CPU is in idle state. 42*13b19169SEugen Hristev CAUTION: This property should be used with care, it actually makes the 43*13b19169SEugen Hristev watchdog not counting when the CPU is in idle state, therefore the 44*13b19169SEugen Hristev watchdog reset time depends on mean CPU usage and will not reset at all 45*13b19169SEugen Hristev if the CPU stop working while it is in idle state, which is probably 46*13b19169SEugen Hristev not what you want. 47*13b19169SEugen Hristev 48*13b19169SEugen Hristev atmel,dbg-halt: 49*13b19169SEugen Hristev $ref: /schemas/types.yaml#/definitions/flag 50*13b19169SEugen Hristev description: | 51*13b19169SEugen Hristev present if you want to stop the watchdog when the CPU is in debug state. 52*13b19169SEugen Hristev 53*13b19169SEugen Hristevrequired: 54*13b19169SEugen Hristev - compatible 55*13b19169SEugen Hristev - reg 56*13b19169SEugen Hristev 57*13b19169SEugen HristevunevaluatedProperties: false 58*13b19169SEugen Hristev 59*13b19169SEugen Hristevexamples: 60*13b19169SEugen Hristev - | 61*13b19169SEugen Hristev #include <dt-bindings/interrupt-controller/irq.h> 62*13b19169SEugen Hristev 63*13b19169SEugen Hristev watchdog@fc068640 { 64*13b19169SEugen Hristev compatible = "atmel,sama5d4-wdt"; 65*13b19169SEugen Hristev reg = <0xfc068640 0x10>; 66*13b19169SEugen Hristev interrupts = <4 IRQ_TYPE_LEVEL_HIGH 5>; 67*13b19169SEugen Hristev timeout-sec = <10>; 68*13b19169SEugen Hristev atmel,watchdog-type = "hardware"; 69*13b19169SEugen Hristev atmel,dbg-halt; 70*13b19169SEugen Hristev atmel,idle-halt; 71*13b19169SEugen Hristev }; 72*13b19169SEugen Hristev 73*13b19169SEugen Hristev... 74