X-Git-Url: https://codewiz.org/gitweb?a=blobdiff_plain;f=drv%2Ftimer_posix.c;h=c0584f077bcd3009a5b4f075b13f738ec0c0aa87;hb=941529ddc4cddd04f69d38c0929ec00fe93aadef;hp=9814dc245d3677e90cd419b2f86c7e49b0c93040;hpb=bbc33efb70a0062b36cc415452922e7ba69c748f;p=bertos.git diff --git a/drv/timer_posix.c b/drv/timer_posix.c old mode 100755 new mode 100644 index 9814dc24..c0584f07 --- a/drv/timer_posix.c +++ b/drv/timer_posix.c @@ -1,8 +1,33 @@ -/*! +/** * \file * * * \version $Id$ @@ -14,6 +39,21 @@ /*#* *#* $Log$ + *#* Revision 1.6 2006/07/19 12:56:26 bernie + *#* Convert to new Doxygen style. + *#* + *#* Revision 1.5 2006/02/21 21:28:02 bernie + *#* New time handling based on TIMER_TICKS_PER_SEC to support slow timers with ticks longer than 1ms. + *#* + *#* Revision 1.4 2006/02/17 22:24:21 bernie + *#* Update POSIX timer emulator. + *#* + *#* Revision 1.3 2006/02/10 12:34:52 bernie + *#* Remove spurious EXTERN_C. + *#* + *#* Revision 1.2 2006/01/16 03:30:21 bernie + *#* Make header C++ friendly. + *#* *#* Revision 1.1 2005/11/27 03:58:18 bernie *#* Add POSIX timer emulator. *#* @@ -34,7 +74,7 @@ void timer_isr(int); /// HW dependent timer initialization. -extern "C" static void timer_hw_init(void) +static void timer_hw_init(void) { struct sigaction sa; memset(&sa, 0, sizeof(sa)); @@ -46,16 +86,16 @@ extern "C" static void timer_hw_init(void) sa.sa_flags = SA_RESTART; sigaction(SIGALRM, &sa, NULL); - // Setup POSIX realtime timer to interrupt every 10ms. + // Setup POSIX realtime timer to interrupt every 1/TIMER_TICKS_PER_SEC. static struct itimerval itv = { - { 0, 1000 }, /* it_interval */ - { 0, 1000 } /* it_value */ + { 0, 1000000 / TIMER_TICKS_PER_SEC }, /* it_interval */ + { 0, 1000000 / TIMER_TICKS_PER_SEC } /* it_value */ }; setitimer(ITIMER_REAL, &itv, NULL); } -extern "C" INLINE hptime_t timer_hw_hpread(void) +INLINE hptime_t timer_hw_hpread(void) { return hptime_get(); }