34#include "ove_config.h"
35#include "ove/storage.h"
41#ifdef CONFIG_OVE_WATCHDOG
58 ove_watchdog_storage_t *storage,
84#ifdef OVE_HEAP_WATCHDOG
97#elif !defined(__ZIG_CIMPORT__)
99#define ove_watchdog_create(pwdt, timeout_ms) \
100 ({ static ove_watchdog_storage_t _ove_stor_; \
101 ove_watchdog_init((pwdt), &_ove_stor_, (timeout_ms)); })
102#define ove_watchdog_destroy(wdt) ove_watchdog_deinit(wdt)
#define OVE_ERR_NOT_SUPPORTED
The requested feature is not supported by the active backend.
Definition types.h:38
struct ove_watchdog * ove_watchdog_t
Opaque handle for a software watchdog object.
Definition types.h:109
void ove_watchdog_destroy(ove_watchdog_t wdt)
Destroy a heap-allocated watchdog timer.
int ove_watchdog_start(ove_watchdog_t wdt)
Start (arm) the watchdog timer.
int ove_watchdog_create(ove_watchdog_t *wdt, uint32_t timeout_ms)
Allocate and initialise a heap-backed watchdog timer.
int ove_watchdog_feed(ove_watchdog_t wdt)
Feed (pet) the watchdog to prevent a system reset.
int ove_watchdog_init(ove_watchdog_t *wdt, ove_watchdog_storage_t *storage, uint32_t timeout_ms)
Initialise a watchdog timer using caller-provided static storage.
int ove_watchdog_stop(ove_watchdog_t wdt)
Stop (disarm) the watchdog timer.
void ove_watchdog_deinit(ove_watchdog_t wdt)
Deinitialise a statically-allocated watchdog timer.