diff options
author | gdisirio <gdisirio@35acf78f-673a-0410-8e92-d51de3d6d3f4> | 2007-09-25 17:39:47 +0000 |
---|---|---|
committer | gdisirio <gdisirio@35acf78f-673a-0410-8e92-d51de3d6d3f4> | 2007-09-25 17:39:47 +0000 |
commit | f6c9ebb65b9a1239638125b7c1f910f12c722b79 (patch) | |
tree | 4887435ecd359ae0abfea92bd79e999ce8616f62 /src/include/delta.h | |
parent | b9f42fa67094f231eaf219750ed03098f36b11fa (diff) | |
download | ChibiOS-f6c9ebb65b9a1239638125b7c1f910f12c722b79.tar.gz ChibiOS-f6c9ebb65b9a1239638125b7c1f910f12c722b79.tar.bz2 ChibiOS-f6c9ebb65b9a1239638125b7c1f910f12c722b79.zip |
git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@20 35acf78f-673a-0410-8e92-d51de3d6d3f4
Diffstat (limited to 'src/include/delta.h')
-rw-r--r-- | src/include/delta.h | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/src/include/delta.h b/src/include/delta.h index 2ae4d887f..14f5b550e 100644 --- a/src/include/delta.h +++ b/src/include/delta.h @@ -69,6 +69,20 @@ typedef struct { extern DeltaList dlist;
+#define chVTDoTickI() \
+ if (&dlist != (DeltaList *)dlist.dl_next) { \
+ VirtualTimer *vtp; \
+ \
+ --dlist.dl_next->vt_dtime; \
+ while (!(vtp = dlist.dl_next)->vt_dtime) { \
+ t_vtfunc fn = vtp->vt_func; \
+ vtp->vt_func = 0; \
+ vtp->vt_prev->vt_next = vtp->vt_next; \
+ vtp->vt_next->vt_prev = vtp->vt_prev; \
+ fn(vtp->vt_par); \
+ } \
+ }
+
/*
* Virtual Timers APIs.
*/
|