u-boot/doc/device-tree-bindings/watchdog/gpio-wdt.txt
Paul Doelle 1fc45d6483 watchdog: add pulse support to gpio watchdog driver
A common external watchdog circuit is kept alive by triggering a short
pulse on the reset pin. This patch adds support for this use case, while
making the algorithm configurable in the devicetree.

The "linux,wdt-gpio" driver being modified is based off the equivalent
driver in the Linux kernel, which provides support for this algorithm.
This patch brings parity to this driver, and is kept aligned with
the functionality and devicetree configuration in the kernel.

It should be noted that this adds a required property named 'hw_algo'
to the devicetree binding, following suit with the kernel. I'm happy to
make this backward-compatible if preferred.

Signed-off-by: Paul Doelle <paaull.git@gmail.com>
Reviewed-by: Stefan Roese <sr@denx.de>
2022-07-21 08:09:06 +02:00

25 lines
813 B
Text

GPIO watchdog timer
Describes a simple watchdog timer which is reset by toggling a gpio.
Required properties:
- compatible: Must be "linux,wdt-gpio".
- gpios: From common gpio binding; gpio connection to WDT reset pin.
- hw_algo: The algorithm used by the driver. Should be one of the
following values:
- toggle: Toggle from high-to-low or low-to-high when resetting the watchdog.
- level: Maintain a constant high/low level, and trigger a short pulse when
resetting the watchdog. Active level is determined by the GPIO flags.
- always-running: Boolean property indicating that the watchdog cannot
be disabled. At present, U-Boot only supports this kind of GPIO
watchdog.
Example:
gpio-wdt {
gpios = <&gpio0 1 0>;
compatible = "linux,wdt-gpio";
hw_algo = "toggle";
always-running;
};