forked from Imagelibrary/rtems
rtems: Add rtems_clock_get_uptime_timeval()
This commit is contained in:
@@ -154,6 +154,7 @@ librtems_a_SOURCES += src/clockgettickssinceboot.c
|
||||
librtems_a_SOURCES += src/clockgettod.c
|
||||
librtems_a_SOURCES += src/clockgettodtimeval.c
|
||||
librtems_a_SOURCES += src/clockgetuptime.c
|
||||
librtems_a_SOURCES += src/clockgetuptimetimeval.c
|
||||
librtems_a_SOURCES += src/clockset.c
|
||||
librtems_a_SOURCES += src/clocksetnsecshandler.c
|
||||
librtems_a_SOURCES += src/clocktick.c
|
||||
|
||||
@@ -227,6 +227,13 @@ rtems_status_code rtems_clock_get_uptime(
|
||||
struct timespec *uptime
|
||||
);
|
||||
|
||||
/**
|
||||
* @brief Gets the system uptime in the struct timeval format.
|
||||
*
|
||||
* @param[out] Returns the system uptime. Pointer must not be NULL.
|
||||
*/
|
||||
void rtems_clock_get_uptime_timeval( struct timeval *uptime );
|
||||
|
||||
/**
|
||||
* @brief _TOD_Validate
|
||||
*
|
||||
|
||||
27
cpukit/rtems/src/clockgetuptimetimeval.c
Normal file
27
cpukit/rtems/src/clockgetuptimetimeval.c
Normal file
@@ -0,0 +1,27 @@
|
||||
/*
|
||||
* Copyright (c) 2012 embedded brains GmbH. All rights reserved.
|
||||
*
|
||||
* embedded brains GmbH
|
||||
* Obere Lagerstr. 30
|
||||
* 82178 Puchheim
|
||||
* Germany
|
||||
* <rtems@embedded-brains.de>
|
||||
*
|
||||
* The license and distribution terms for this file may be
|
||||
* found in the file LICENSE in this distribution or at
|
||||
* http://www.rtems.com/license/LICENSE.
|
||||
*/
|
||||
|
||||
#if HAVE_CONFIG_H
|
||||
#include "config.h"
|
||||
#endif
|
||||
|
||||
#include <rtems/rtems/clock.h>
|
||||
|
||||
void rtems_clock_get_uptime_timeval( struct timeval *uptime )
|
||||
{
|
||||
Timestamp_Control snapshot_as_timestamp;
|
||||
|
||||
_TOD_Get_uptime( &snapshot_as_timestamp );
|
||||
_Timestamp_To_timeval( &snapshot_as_timestamp, uptime );
|
||||
}
|
||||
@@ -22,6 +22,7 @@ the clock manager are:
|
||||
@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_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_set_nanoseconds_extension} - Install the nanoseconds since last tick handler
|
||||
@item @code{@value{DIRPREFIX}clock_tick} - Announce a clock tick
|
||||
@end itemize
|
||||
@@ -665,6 +666,40 @@ call.
|
||||
|
||||
This directive may be called from an ISR.
|
||||
|
||||
@c
|
||||
@c
|
||||
@c
|
||||
@page
|
||||
@subsection CLOCK_GET_UPTIME_TIMEVAL - Get the time since boot in timeval format
|
||||
|
||||
@cindex clock get uptime
|
||||
@cindex uptime
|
||||
|
||||
@subheading CALLING SEQUENCE:
|
||||
|
||||
@ifset is-C
|
||||
@findex rtems_clock_get_uptime_timeval
|
||||
@example
|
||||
void rtems_clock_get_uptime_timeval(
|
||||
struct timeval *uptime
|
||||
);
|
||||
@end example
|
||||
@end ifset
|
||||
|
||||
@subheading DIRECTIVE STATUS CODES:
|
||||
|
||||
NONE
|
||||
|
||||
@subheading DESCRIPTION:
|
||||
|
||||
This directive returns the seconds and microseconds since the
|
||||
system was booted. If the BSP supports nanosecond clock
|
||||
accuracy, the time reported will probably be different on every
|
||||
call.
|
||||
|
||||
@subheading NOTES:
|
||||
|
||||
This directive may be called from an ISR.
|
||||
|
||||
@c
|
||||
@c
|
||||
|
||||
@@ -83,6 +83,9 @@ void Screen2()
|
||||
"rtems_clock_get_uptime NULL param"
|
||||
);
|
||||
|
||||
puts( "TA1 - rtems_clock_get_uptime_timeval" );
|
||||
rtems_clock_get_uptime_timeval( &tv );
|
||||
|
||||
puts( "TA1 - rtems_clock_get_tod_timeval - RTEMS_INVALID_ADDRESS" );
|
||||
status = rtems_clock_get_tod_timeval( NULL );
|
||||
fatal_directive_status(
|
||||
|
||||
@@ -31,6 +31,7 @@ TA1 - rtems_clock_get_tod - RTEMS_NOT_DEFINED
|
||||
TA1 - rtems_clock_get_seconds_since_epoch - RTEMS_INVALID_ADDRESS
|
||||
TA1 - rtems_clock_get_seconds_since_epoch - RTEMS_NOT_DEFINED
|
||||
TA1 - rtems_clock_get_uptime - RTEMS_INVALID_ADDRESS
|
||||
TA1 - rtems_clock_get_uptime_timeval
|
||||
TA1 - rtems_clock_get_tod_timeval - RTEMS_INVALID_ADDRESS
|
||||
TA1 - rtems_clock_get_tod_timeval - RTEMS_NOT_DEFINED
|
||||
TA1 - rtems_clock_set_nanoseconds_extension - RTEMS_INVALID_ADDRESS
|
||||
|
||||
Reference in New Issue
Block a user