projects
/
bertos.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Fix timer test
[bertos.git]
/
bertos
/
emul
/
timer_posix.c
diff --git
a/bertos/emul/timer_posix.c
b/bertos/emul/timer_posix.c
index b83480571ac8c830f903a8707429bf8e720875a4..c372bae1c8b6db7b51a70dfeac34e40cb9bc2bfc 100644
(file)
--- a/
bertos/emul/timer_posix.c
+++ b/
bertos/emul/timer_posix.c
@@
-26,14
+26,12
@@
* invalidate any other reasons why the executable file might be covered by
* the GNU General Public License.
*
* invalidate any other reasons why the executable file might be covered by
* the GNU General Public License.
*
- * Copyright 2005,2008 Develer S.r.l. (http://www.develer.com/)
- *
+ * Copyright 2005, 2008 Develer S.r.l. (http://www.develer.com/)
* -->
*
* \version $Id$
*
* \author Bernie Innocenti <bernie@codewiz.org>
* -->
*
* \version $Id$
*
* \author Bernie Innocenti <bernie@codewiz.org>
- *
* \brief Low-level timer module for Qt emulator (implementation).
*/
#include <cfg/compiler.h> // hptime.t
* \brief Low-level timer module for Qt emulator (implementation).
*/
#include <cfg/compiler.h> // hptime.t
@@
-61,7
+59,7
@@
static void timer_hw_init(void)
sigaction(SIGALRM, &sa, NULL);
// Setup POSIX realtime timer to interrupt every 1/TIMER_TICKS_PER_SEC.
sigaction(SIGALRM, &sa, NULL);
// Setup POSIX realtime timer to interrupt every 1/TIMER_TICKS_PER_SEC.
- static struct itimerval itv =
+ static
const
struct itimerval itv =
{
{ 0, 1000000 / TIMER_TICKS_PER_SEC }, /* it_interval */
{ 0, 1000000 / TIMER_TICKS_PER_SEC } /* it_value */
{
{ 0, 1000000 / TIMER_TICKS_PER_SEC }, /* it_interval */
{ 0, 1000000 / TIMER_TICKS_PER_SEC } /* it_value */
@@
-69,6
+67,16
@@
static void timer_hw_init(void)
setitimer(ITIMER_REAL, &itv, NULL);
}
setitimer(ITIMER_REAL, &itv, NULL);
}
+static void timer_hw_cleanup(void)
+{
+ static const struct itimerval itv =
+ {
+ { 0, 0 }, /* it_interval */
+ { 0, 0 } /* it_value */
+ };
+ setitimer(ITIMER_REAL, &itv, NULL);
+}
+
INLINE hptime_t timer_hw_hpread(void)
{
return hptime_get();
INLINE hptime_t timer_hw_hpread(void)
{
return hptime_get();