| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768 |
- # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
- %YAML 1.2
- ---
- $id: http://devicetree.org/schemas/watchdog/linux,wdt-gpio.yaml#
- $schema: http://devicetree.org/meta-schemas/core.yaml#
- title: GPIO-controlled Watchdog
- maintainers:
- - Guenter Roeck <linux@roeck-us.net>
- - Robert Marko <robert.marko@sartura.hr>
- properties:
- compatible:
- const: linux,wdt-gpio
- gpios:
- description: gpio connection to WDT reset pin
- maxItems: 1
- hw_algo:
- description: The algorithm used by the driver.
- oneOf:
- - description:
- Either a high-to-low or a low-to-high transition clears the WDT counter.
- The watchdog timer is disabled when GPIO is left floating or connected
- to a three-state buffer.
- const: toggle
- - description:
- Low or high level starts counting WDT timeout, the opposite level
- disables the WDT.
- Active level is determined by the GPIO flags.
- const: level
- hw_margin_ms:
- description: Maximum time to reset watchdog circuit (milliseconds).
- $ref: /schemas/types.yaml#/definitions/uint32
- minimum: 2
- maximum: 65535
- always-running:
- type: boolean
- description:
- If the watchdog timer cannot be disabled, add this flag to have the driver
- keep toggling the signal without a client.
- It will only cease to toggle the signal when the device is open and the
- timeout elapsed.
- required:
- - compatible
- - gpios
- - hw_algo
- - hw_margin_ms
- allOf:
- - $ref: watchdog.yaml#
- unevaluatedProperties: false
- examples:
- - |
- #include <dt-bindings/gpio/gpio.h>
- watchdog {
- compatible = "linux,wdt-gpio";
- gpios = <&gpio3 9 GPIO_ACTIVE_LOW>;
- hw_algo = "toggle";
- hw_margin_ms = <1600>;
- };
|