[PATCH 16/21] rtems: Avoid <rtems/score/timecounter.h> in API
Sebastian Huber
sebastian.huber at embedded-brains.de
Thu Nov 8 12:52:09 UTC 2018
Use a real function for rtems_clock_get_uptime_seconds().
Update #3598.
---
cpukit/Makefile.am | 1 +
cpukit/include/rtems/imfs.h | 1 +
cpukit/include/rtems/rtems/clock.h | 8 +-------
cpukit/include/rtems/rtems/types.h | 1 +
cpukit/rtems/src/clockgetuptimeseconds.c | 31 +++++++++++++++++++++++++++++++
5 files changed, 35 insertions(+), 7 deletions(-)
create mode 100644 cpukit/rtems/src/clockgetuptimeseconds.c
diff --git a/cpukit/Makefile.am b/cpukit/Makefile.am
index 9a52db7661..0c9e05d234 100644
--- a/cpukit/Makefile.am
+++ b/cpukit/Makefile.am
@@ -673,6 +673,7 @@ librtemscpu_a_SOURCES += rtems/src/clockgettod.c
librtemscpu_a_SOURCES += rtems/src/clockgettodtimeval.c
librtemscpu_a_SOURCES += rtems/src/clockgetuptime.c
librtemscpu_a_SOURCES += rtems/src/clockgetuptimenanoseconds.c
+librtemscpu_a_SOURCES += rtems/src/clockgetuptimeseconds.c
librtemscpu_a_SOURCES += rtems/src/clockgetuptimetimeval.c
librtemscpu_a_SOURCES += rtems/src/clockset.c
librtemscpu_a_SOURCES += rtems/src/clocktick.c
diff --git a/cpukit/include/rtems/imfs.h b/cpukit/include/rtems/imfs.h
index 3d2048afeb..e83209508c 100644
--- a/cpukit/include/rtems/imfs.h
+++ b/cpukit/include/rtems/imfs.h
@@ -21,6 +21,7 @@
#include <rtems/libio_.h>
#include <rtems/pipe.h>
+#include <rtems/score/timecounter.h>
/**
* @brief In-Memory File System Support.
diff --git a/cpukit/include/rtems/rtems/clock.h b/cpukit/include/rtems/rtems/clock.h
index da833eac48..f3f406d2e6 100644
--- a/cpukit/include/rtems/rtems/clock.h
+++ b/cpukit/include/rtems/rtems/clock.h
@@ -33,9 +33,6 @@
#include <rtems/rtems/status.h>
#include <rtems/rtems/types.h>
#include <rtems/config.h>
-#include <rtems/score/timecounterimpl.h>
-
-#include <sys/time.h> /* struct timeval */
/**
* @defgroup ClassicClock Clocks
@@ -265,10 +262,7 @@ void rtems_clock_get_uptime_timeval( struct timeval *uptime );
*
* @retval The system uptime in seconds.
*/
-RTEMS_INLINE_ROUTINE time_t rtems_clock_get_uptime_seconds( void )
-{
- return _Timecounter_Time_uptime - 1;
-}
+time_t rtems_clock_get_uptime_seconds( void );
/**
* @brief Returns the system uptime in nanoseconds.
diff --git a/cpukit/include/rtems/rtems/types.h b/cpukit/include/rtems/rtems/types.h
index 2028c427f0..13adf175a6 100644
--- a/cpukit/include/rtems/rtems/types.h
+++ b/cpukit/include/rtems/rtems/types.h
@@ -23,6 +23,7 @@
*/
#include <sys/_timespec.h>
+#include <sys/_timeval.h>
#include <stdint.h>
#include <rtems/score/heap.h>
#include <rtems/score/object.h>
diff --git a/cpukit/rtems/src/clockgetuptimeseconds.c b/cpukit/rtems/src/clockgetuptimeseconds.c
new file mode 100644
index 0000000000..ad412b2234
--- /dev/null
+++ b/cpukit/rtems/src/clockgetuptimeseconds.c
@@ -0,0 +1,31 @@
+/**
+ * @file
+ *
+ * @ingroup ClassicClock
+ */
+
+/*
+ * Copyright (c) 2018 embedded brains GmbH. All rights reserved.
+ *
+ * embedded brains GmbH
+ * Dornierstr. 4
+ * 82178 Puchheim
+ * Germany
+ * <rtems at 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.
+ */
+
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
+
+#include <rtems/rtems/clock.h>
+#include <rtems/score/timecounter.h>
+
+time_t rtems_clock_get_uptime_seconds( void )
+{
+ return _Timecounter_Time_uptime - 1;
+}
--
2.16.4
More information about the devel
mailing list