From b5d671776c6ee22d7253aed8e97054785b80e44b Mon Sep 17 00:00:00 2001
From: patacongo
@@ -1816,7 +1816,7 @@ has been started.
Input Parameters:
@@ -1850,8 +1850,8 @@ before de-allocating it (i.e., never returns ERROR).
Function Prototype:
@@ -1867,15 +1867,16 @@ was called.
Watchdog timers execute only once.
To replace either the timeout delay or the function to be executed,
-call wd_start again with the same wdId; only the most recent
+call wd_start again with the same wdog; only the most recent
wd_start() on a given watchdog ID has any effect.
Input Parameters:
@@ -1892,14 +1893,15 @@ restrictions.
POSIX Compatibility: This is a NON-POSIX interface.
VxWorks provides the following comparable interface:
Differences from the VxWorks interface include:
@@ -1918,7 +1920,7 @@ level.
Input Parameters:
@@ -1933,7 +1935,7 @@ level.
POSIX Compatibility: This is a NON-POSIX interface.
VxWorks provides the following comparable interface:
+ When a watchdog expires, the callback function with this
+ type is called:
+
+ Where argc is the number of uint32 type arguments that follow.
+
#include <wdog.h>
- STATUS wd_delete (WDOG_ID wdId);
+ STATUS wd_delete (WDOG_ID wdog);
-
@@ -1834,7 +1834,7 @@ it.
POSIX Compatibility: This is a NON-POSIX interface.
VxWorks provides the following comparable interface:
- STATUS wdDelete (WDOG_ID wdId);
+ STATUS wdDelete (WDOG_ID wdog);
#include <wdog.h>
- STATUS wd_start( WDOG_ID wdId, int delay, wdentry_t wdentry,
- int parm1, int parm2, int parm3, int parm4 );
+ STATUS wd_start( WDOG_ID wdog, int delay, wdentry_t wdentry,
+ intt argc, ....);
-
- STATUS wdStart (WDOG_ID wdId, int delay, FUNCPTR wdentry, int parameter);
+ STATUS wdStart (WDOG_ID wdog, int delay, FUNCPTR wdentry, int parameter);
-
2.6.4 wd_cancel
@@ -1908,7 +1910,7 @@ to wdentry; VxWorks supports only a single parameter.
Function Prototype:
#include <wdog.h>
- STATUS wd_cancel (WDOG_ID wdId);
+ STATUS wd_cancel (WDOG_ID wdog);
-
- STATUS wdCancel (WDOG_ID wdId);
+ STATUS wdCancel (WDOG_ID wdog);
@@ -4073,6 +4075,39 @@ notify a task when a message is available on a queue.
int sigev_notify;
};
+
+3.4.9 Watchdog Data Types
+
+
+ typedef void (*wdentry_t)(int argc, ...);
+
+
+ union wdparm_u + { + void *pvarg; + uint32 *dwarg; + }; + typedef union wdparm_u wdparm_t; ++
+ For most 32-bit systems, pointers and uint32 are the same size + For systems where sizeof(pointer) > sizeof(uint32), we will + have to do some redesign. +
+