From 78bbe5940b385269de8282e0224c25d020478bc1 Mon Sep 17 00:00:00 2001 From: Sebastian Huber Date: Wed, 7 Nov 2018 14:12:52 +0100 Subject: rtems: Move internal structures to ratemondata.h Update #3598. --- cpukit/include/rtems/rtems/ratemon.h | 110 ----------------------------------- 1 file changed, 110 deletions(-) (limited to 'cpukit/include/rtems/rtems/ratemon.h') 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 #include -#include #include struct rtems_printer; @@ -60,20 +59,8 @@ extern "C" { */ /**@{*/ -/** - * This is the public type used for the rate monotonic timing - * statistics. - */ -#include - typedef struct timespec rtems_rate_monotonic_period_time_t RTEMS_DEPRECATED; -/** - * This is the internal type used for the rate monotonic timing - * statistics. - */ -#include - /** * The following enumerated type defines the states in which a * period may be. @@ -134,31 +121,6 @@ typedef struct { struct timespec total_wall_time; } 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. */ @@ -187,78 +149,6 @@ typedef struct { uint32_t postponed_jobs_count; } 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 * -- cgit v1.2.3