diff options
author | Thomas Doerfler <Thomas.Doerfler@embedded-brains.de> | 2009-11-30 09:08:35 +0000 |
---|---|---|
committer | Thomas Doerfler <Thomas.Doerfler@embedded-brains.de> | 2009-11-30 09:08:35 +0000 |
commit | 6e51c4c9f7212bd696ee7aa777c9ca4ac1ad6d3b (patch) | |
tree | 0260716bb7c1fc8b80e018924678a0b74a7b42bf /cpukit/rtems/src/timerreset.c | |
parent | Regenerate. (diff) | |
download | rtems-6e51c4c9f7212bd696ee7aa777c9ca4ac1ad6d3b.tar.bz2 |
Added timer server control block
Removed _Timer_Server thread pointer
Added _Timer_server pointer to the default timer server control block
Rework of the timer server implementation.
Diffstat (limited to '')
-rw-r--r-- | cpukit/rtems/src/timerreset.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/cpukit/rtems/src/timerreset.c b/cpukit/rtems/src/timerreset.c index 43f41b50ba..fc3f074895 100644 --- a/cpukit/rtems/src/timerreset.c +++ b/cpukit/rtems/src/timerreset.c @@ -55,6 +55,8 @@ rtems_status_code rtems_timer_reset( _Watchdog_Remove( &the_timer->Ticker ); _Watchdog_Insert( &_Watchdog_Ticks_chain, &the_timer->Ticker ); } else if ( the_timer->the_class == TIMER_INTERVAL_ON_TASK ) { + Timer_server_Control *timer_server = _Timer_server; + /* * There is no way for a timer to have this class unless * it was scheduled as a server fire. That requires that @@ -62,13 +64,13 @@ rtems_status_code rtems_timer_reset( * occur unless something is internally wrong. */ #if defined(RTEMS_DEBUG) - if ( !_Timer_Server_schedule_operation ) { + if ( !timer_server ) { _Thread_Enable_dispatch(); return RTEMS_INCORRECT_STATE; } #endif _Watchdog_Remove( &the_timer->Ticker ); - (*_Timer_Server_schedule_operation)( the_timer ); + (*timer_server->schedule_operation)( timer_server, the_timer ); } else { /* * Must be dormant or time of day timer (e.g. TIMER_DORMANT, |