[PATCH 1/2] rtems: Inline rtems_clock_get_ticks_since_boot()
Gedare Bloom
gedare at rtems.org
Fri Aug 22 15:18:42 UTC 2014
On Fri, Aug 22, 2014 at 11:12 AM, Sebastian Huber
<sebastian.huber at embedded-brains.de> wrote:
> 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 b00e251..a1fafb1 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 d80218d..ff71665 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;
> +}
This should go to a new file clockimpl.h for consistency.
>
> /**
> * @brief Obtain Ticks Per Seconds
> diff --git a/cpukit/rtems/src/clockgettickssinceboot.c b/cpukit/rtems/src/clockgettickssinceboot.c
> deleted file mode 100644
> index 4aced96..0000000
> --- 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 <rtems/system.h>
> -#include <rtems/rtems/status.h>
> -#include <rtems/rtems/clock.h>
> -#include <rtems/score/isr.h>
> -#include <rtems/score/thread.h>
> -#include <rtems/score/watchdogimpl.h>
> -
> -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 7327f77..06c87a1 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 72b6b3b..d50e279 100644
> --- a/cpukit/score/include/rtems/score/watchdogimpl.h
> +++ b/cpukit/score/include/rtems/score/watchdogimpl.h
> @@ -85,14 +85,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.
> *
> * This is the watchdog chain which is managed at ticks.
> diff --git a/doc/user/clock.t b/doc/user/clock.t
> index fdbd91d..921d1cb 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
> - at item @code{@value{DIRPREFIX}clock_get_ticks_since_boot} - Get ticks since boot
> + at 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
> - at 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
> - at subsection CLOCK_GET_TICKS_SINCE_BOOT - Get ticks since boot
> + at subsection CLOCK_GET_TICKS_SINCE_BOOT - Get current ticks counter value
>
> @cindex obtain ticks since boot
> + at 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
> - at 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
> + at 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
> - at 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
> - at 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
> --
> 1.8.4.5
>
> _______________________________________________
> devel mailing list
> devel at rtems.org
> http://lists.rtems.org/mailman/listinfo/devel
More information about the devel
mailing list