RTEMS 6.1-rc2
|
This header file provides interfaces of the Watchdog Handler which are only used by the implementation. More...
#include <rtems/score/watchdog.h>
#include <rtems/score/watchdogticks.h>
#include <rtems/score/assert.h>
#include <rtems/score/isrlock.h>
#include <rtems/score/percpu.h>
#include <rtems/score/rbtreeimpl.h>
#include <sys/types.h>
#include <sys/timespec.h>
Go to the source code of this file.
Macros | |
#define | WATCHDOG_INITIALIZER(routine) |
Watchdog initializer for static initialization. | |
#define | _Watchdog_Tickle(header, first, now, lock, lock_context) _Watchdog_Do_tickle( header, first, now, lock_context ) |
#define | WATCHDOG_MAXIMUM_TICKS UINT64_MAX |
The maximum watchdog ticks value for the far future. | |
#define | WATCHDOG_NANOSECONDS_PER_SECOND 1000000000 |
#define | WATCHDOG_BITS_FOR_1E9_NANOSECONDS 30 |
The bits necessary to store 1000000000 (= WATCHDOG_NANOSECONDS_PER_SECOND) nanoseconds. | |
#define | WATCHDOG_MAX_SECONDS 0x3ffffffff |
The maximum number of seconds representable in the nanoseconds watchdog format. | |
Enumerations | |
enum | Watchdog_State { WATCHDOG_SCHEDULED_BLACK , WATCHDOG_SCHEDULED_RED , WATCHDOG_INACTIVE , WATCHDOG_PENDING } |
Watchdog states. More... | |
Functions | |
void | _Watchdog_Tick (struct Per_CPU_Control *cpu) |
Performs a watchdog tick. | |
void | _Watchdog_Do_tickle (Watchdog_Header *header, Watchdog_Control *first, uint64_t now, ISR_lock_Context *lock_context) |
Calls the routine of each not expired watchdog control node. | |
void | _Watchdog_Insert (Watchdog_Header *header, Watchdog_Control *the_watchdog, uint64_t expire) |
Inserts a watchdog into the set of scheduled watchdogs according to the specified expiration time. | |
void | _Watchdog_Remove (Watchdog_Header *header, Watchdog_Control *the_watchdog) |
In the case the watchdog is scheduled, then it is removed from the set of scheduled watchdogs. | |
This header file provides interfaces of the Watchdog Handler which are only used by the implementation.