From f553c6ebbe4c61b239da07e6b7d70afa3b10828e Mon Sep 17 00:00:00 2001 From: Sebastian Huber Date: Fri, 22 Aug 2014 16:39:47 +0200 Subject: rtems: Inline rtems_clock_get_ticks_since_boot() Update documentation. --- cpukit/rtems/Makefile.am | 1 - cpukit/rtems/include/rtems/rtems/clock.h | 14 +++++------ cpukit/rtems/src/clockgettickssinceboot.c | 31 ------------------------- cpukit/score/include/rtems/score/watchdog.h | 7 ++++++ cpukit/score/include/rtems/score/watchdogimpl.h | 8 ------- doc/user/clock.t | 31 ++++++++----------------- 6 files changed, 24 insertions(+), 68 deletions(-) delete mode 100644 cpukit/rtems/src/clockgettickssinceboot.c diff --git a/cpukit/rtems/Makefile.am b/cpukit/rtems/Makefile.am index b00e25120f..a1fafb1957 100644 --- a/cpukit/rtems/Makefile.am +++ b/cpukit/rtems/Makefile.am @@ -151,7 +151,6 @@ librtems_a_SOURCES += src/barrierdata.c librtems_a_SOURCES += src/clockget.c librtems_a_SOURCES += src/clockgetsecondssinceepoch.c librtems_a_SOURCES += src/clockgettickspersecond.c -librtems_a_SOURCES += src/clockgettickssinceboot.c librtems_a_SOURCES += src/clockgettod.c librtems_a_SOURCES += src/clockgettodtimeval.c librtems_a_SOURCES += src/clockgetuptime.c diff --git a/cpukit/rtems/include/rtems/rtems/clock.h b/cpukit/rtems/include/rtems/rtems/clock.h index d80218d0d5..ff71665132 100644 --- a/cpukit/rtems/include/rtems/rtems/clock.h +++ b/cpukit/rtems/include/rtems/rtems/clock.h @@ -149,15 +149,15 @@ rtems_status_code rtems_clock_get_seconds_since_epoch( ); /** - * @brief Obtain Ticks Since Boot + * @brief Gets the current ticks counter value. * - * This routine implements the rtems_clock_get_ticks_since_boot - * directive. - * - * @retval This method returns the number of ticks since boot. It cannot - * fail since RTEMS always keeps a running count of ticks since boot. + * @return The current tick counter value. With a 1ms clock tick, this counter + * overflows after 50 days since boot. */ -rtems_interval rtems_clock_get_ticks_since_boot(void); +RTEMS_INLINE_ROUTINE rtems_interval rtems_clock_get_ticks_since_boot(void) +{ + return _Watchdog_Ticks_since_boot; +} /** * @brief Obtain Ticks Per Seconds diff --git a/cpukit/rtems/src/clockgettickssinceboot.c b/cpukit/rtems/src/clockgettickssinceboot.c deleted file mode 100644 index 4aced96073..0000000000 --- a/cpukit/rtems/src/clockgettickssinceboot.c +++ /dev/null @@ -1,31 +0,0 @@ -/** - * @file - * - * @brief Obtain Ticks Since Boot - * @ingroup ClassicClock - */ - -/* - * COPYRIGHT (c) 1989-2008. - * On-Line Applications Research Corporation (OAR). - * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.org/license/LICENSE. - */ - -#if HAVE_CONFIG_H -#include "config.h" -#endif - -#include -#include -#include -#include -#include -#include - -rtems_interval rtems_clock_get_ticks_since_boot(void) -{ - return _Watchdog_Ticks_since_boot; -} diff --git a/cpukit/score/include/rtems/score/watchdog.h b/cpukit/score/include/rtems/score/watchdog.h index 7327f77204..06c87a138f 100644 --- a/cpukit/score/include/rtems/score/watchdog.h +++ b/cpukit/score/include/rtems/score/watchdog.h @@ -124,6 +124,13 @@ typedef struct { void *user_data; } Watchdog_Control; +/** + * @brief The watchdog ticks counter. + * + * With a 1ms watchdog tick, this counter overflows after 50 days since boot. + */ +SCORE_EXTERN volatile Watchdog_Interval _Watchdog_Ticks_since_boot; + /**@}*/ #ifdef __cplusplus diff --git a/cpukit/score/include/rtems/score/watchdogimpl.h b/cpukit/score/include/rtems/score/watchdogimpl.h index 72b6b3b568..d50e279b40 100644 --- a/cpukit/score/include/rtems/score/watchdogimpl.h +++ b/cpukit/score/include/rtems/score/watchdogimpl.h @@ -84,14 +84,6 @@ SCORE_EXTERN volatile uint32_t _Watchdog_Sync_level; */ SCORE_EXTERN volatile uint32_t _Watchdog_Sync_count; -/** - * @brief The number of ticks since the system was booted. - * - * This contains the number of ticks since the system was booted. - */ - -SCORE_EXTERN volatile Watchdog_Interval _Watchdog_Ticks_since_boot; - /** * @brief Watchdog chain which is managed at ticks. * diff --git a/doc/user/clock.t b/doc/user/clock.t index fdbd91db21..921d1cbbe8 100644 --- a/doc/user/clock.t +++ b/doc/user/clock.t @@ -20,7 +20,7 @@ the clock manager are: @item @code{@value{DIRPREFIX}clock_get_tod_timeval} - Get date and time in timeval format @item @code{@value{DIRPREFIX}clock_get_seconds_since_epoch} - Get seconds since epoch @item @code{@value{DIRPREFIX}clock_get_ticks_per_second} - Get ticks per second -@item @code{@value{DIRPREFIX}clock_get_ticks_since_boot} - Get ticks since boot +@item @code{@value{DIRPREFIX}clock_get_ticks_since_boot} - Get current ticks counter value @item @code{@value{DIRPREFIX}clock_get_uptime} - Get time since boot @item @code{@value{DIRPREFIX}clock_get_uptime_timeval} - Get time since boot in timeval format @item @code{@value{DIRPREFIX}clock_get_uptime_seconds} - Get seconds since boot @@ -569,19 +569,16 @@ application has configured. This directive is callable from an ISR. -This directive will not cause the running task to be -preempted. Re-initializing RTEMS causes the system date and -time to be reset to an uninitialized state. Another call to -@code{@value{DIRPREFIX}clock_set} is required to re-initialize the -system date and time to application specific specifications. +This directive will not cause the running task to be preempted. @c @c @c @page -@subsection CLOCK_GET_TICKS_SINCE_BOOT - Get ticks since boot +@subsection CLOCK_GET_TICKS_SINCE_BOOT - Get current ticks counter value @cindex obtain ticks since boot +@cindex get current ticks counter value @subheading CALLING SEQUENCE: @@ -604,25 +601,17 @@ NONE @subheading DESCRIPTION: -This directive returns the number of clock ticks that have elapsed -since the system was booted. This is the historical measure of uptime -in an RTEMS system. The newer service -@code{@value{DIRPREFIX}clock_get_uptime} is another and potentially -more accurate way of obtaining similar information. +This directive returns the current tick counter value. With a 1ms clock tick, +this counter overflows after 50 days since boot. This is the historical +measure of uptime in an RTEMS system. The newer service +@code{@value{DIRPREFIX}clock_get_uptime} is another and potentially more +accurate way of obtaining similar information. @subheading NOTES: This directive is callable from an ISR. -This directive will not cause the running task to be -preempted. Re-initializing RTEMS causes the system date and -time to be reset to an uninitialized state. Another call to -@code{@value{DIRPREFIX}clock_set} is required to re-initialize the -system date and time to application specific specifications. - -This directive simply returns the number of times the dirivective -@code{@value{DIRPREFIX}clock_tick} has been invoked since the -system was booted. +This directive will not cause the running task to be preempted. @c @c -- cgit v1.2.3