aboutsummaryrefslogtreecommitdiffstats
path: root/src/include/delta.h
diff options
context:
space:
mode:
authorgdisirio <gdisirio@35acf78f-673a-0410-8e92-d51de3d6d3f4>2007-09-25 18:41:39 +0000
committergdisirio <gdisirio@35acf78f-673a-0410-8e92-d51de3d6d3f4>2007-09-25 18:41:39 +0000
commit95b238fc867da32f28c74b98b793fbd40345b595 (patch)
tree4887435ecd359ae0abfea92bd79e999ce8616f62 /src/include/delta.h
parent619b739d93252f4fc78a98e1bd1c36e9edbbca28 (diff)
downloadChibiOS-95b238fc867da32f28c74b98b793fbd40345b595.tar.gz
ChibiOS-95b238fc867da32f28c74b98b793fbd40345b595.tar.bz2
ChibiOS-95b238fc867da32f28c74b98b793fbd40345b595.zip
git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@23 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.
*/