summaryrefslogtreecommitdiffstats
path: root/cpukit/include/rtems/rtems/ratemon.h
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2018-11-07 14:12:52 +0100
committerSebastian Huber <sebastian.huber@embedded-brains.de>2018-11-12 13:25:39 +0100
commit78bbe5940b385269de8282e0224c25d020478bc1 (patch)
treef7b9fac1307ca66368674bd3f4495890266da3e9 /cpukit/include/rtems/rtems/ratemon.h
parentInclude missing <sys/types.h> (diff)
downloadrtems-78bbe5940b385269de8282e0224c25d020478bc1.tar.bz2
rtems: Move internal structures to ratemondata.h
Update #3598.
Diffstat (limited to 'cpukit/include/rtems/rtems/ratemon.h')
-rw-r--r--cpukit/include/rtems/rtems/ratemon.h110
1 files changed, 0 insertions, 110 deletions
diff --git a/cpukit/include/rtems/rtems/ratemon.h b/cpukit/include/rtems/rtems/ratemon.h
index 738dc5244d..747d967af2 100644
--- a/cpukit/include/rtems/rtems/ratemon.h
+++ b/cpukit/include/rtems/rtems/ratemon.h
@@ -35,7 +35,6 @@
#include <rtems/rtems/types.h>
#include <rtems/rtems/status.h>
-#include <rtems/score/thread.h>
#include <rtems/score/watchdog.h>
struct rtems_printer;
@@ -60,21 +59,9 @@ extern "C" {
*/
/**@{*/
-/**
- * This is the public type used for the rate monotonic timing
- * statistics.
- */
-#include <rtems/score/timespec.h>
-
typedef struct timespec rtems_rate_monotonic_period_time_t RTEMS_DEPRECATED;
/**
- * This is the internal type used for the rate monotonic timing
- * statistics.
- */
-#include <rtems/score/timestamp.h>
-
-/**
* The following enumerated type defines the states in which a
* period may be.
*/
@@ -135,31 +122,6 @@ typedef struct {
} rtems_rate_monotonic_period_statistics;
/**
- * The following defines the INTERNAL data structure that has the
- * statistics kept on each period instance.
- */
-typedef struct {
- /** This field contains the number of periods executed. */
- uint32_t count;
- /** This field contains the number of periods missed. */
- uint32_t missed_count;
-
- /** This field contains the least amount of CPU time used in a period. */
- Timestamp_Control min_cpu_time;
- /** This field contains the highest amount of CPU time used in a period. */
- Timestamp_Control max_cpu_time;
- /** This field contains the total amount of wall time used in a period. */
- Timestamp_Control total_cpu_time;
-
- /** This field contains the least amount of wall time used in a period. */
- Timestamp_Control min_wall_time;
- /** This field contains the highest amount of wall time used in a period. */
- Timestamp_Control max_wall_time;
- /** This field contains the total amount of CPU time used in a period. */
- Timestamp_Control total_wall_time;
-} Rate_monotonic_Statistics;
-
-/**
* The following defines the period status structure.
*/
typedef struct {
@@ -188,78 +150,6 @@ typedef struct {
} rtems_rate_monotonic_period_status;
/**
- * @brief The following structure defines the control block used to manage each
- * period.
- *
- * State changes are protected by the default thread lock of the owner thread.
- * The owner thread is the thread that created the period object. The owner
- * thread field is immutable after object creation.
- */
-typedef struct {
- /** This field is the object management portion of a Period instance. */
- Objects_Control Object;
-
- /**
- * @brief Protects the rate monotonic period state.
- */
- ISR_LOCK_MEMBER( Lock )
-
- /** This is the timer used to provide the unblocking mechanism. */
- Watchdog_Control Timer;
-
- /** This field indicates the current state of the period. */
- rtems_rate_monotonic_period_states state;
-
- /**
- * @brief A priority node for use by the scheduler job release and cancel
- * operations.
- */
- Priority_Node Priority;
-
- /**
- * This field contains the length of the next period to be
- * executed.
- */
- uint32_t next_length;
-
- /**
- * This field contains a pointer to the TCB for the thread
- * which owns and uses this period instance.
- */
- Thread_Control *owner;
-
- /**
- * This field contains the cpu usage value of the owning thread when
- * the period was initiated. It is used to compute the period's
- * statistics.
- */
- Timestamp_Control cpu_usage_period_initiated;
-
- /**
- * This field contains the wall time value when the period
- * was initiated. It is used to compute the period's statistics.
- */
- Timestamp_Control time_period_initiated;
-
- /**
- * This field contains the statistics maintained for the period.
- */
- Rate_monotonic_Statistics Statistics;
-
- /**
- * This field contains the number of postponed jobs.
- * When the watchdog timeout, this variable will be increased immediately.
- */
- uint32_t postponed_jobs;
-
- /**
- * This field contains the tick of the latest deadline decided by the period
- * watchdog.
- */
- uint64_t latest_deadline;
-} Rate_monotonic_Control;
-
-/**
* @brief Create a Period
*
* Rate Monotonic Manager