aboutsummaryrefslogtreecommitdiffstats
path: root/src/include/delta.h
diff options
context:
space:
mode:
authorgdisirio <gdisirio@35acf78f-673a-0410-8e92-d51de3d6d3f4>2007-09-25 17:39:47 +0000
committergdisirio <gdisirio@35acf78f-673a-0410-8e92-d51de3d6d3f4>2007-09-25 17:39:47 +0000
commitf6c9ebb65b9a1239638125b7c1f910f12c722b79 (patch)
tree4887435ecd359ae0abfea92bd79e999ce8616f62 /src/include/delta.h
parentb9f42fa67094f231eaf219750ed03098f36b11fa (diff)
downloadChibiOS-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.h14
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.
*/