diff options
Diffstat (limited to '')
-rw-r--r-- | testsuites/validation/tc-task-performance.c | 106 |
1 files changed, 96 insertions, 10 deletions
diff --git a/testsuites/validation/tc-task-performance.c b/testsuites/validation/tc-task-performance.c index 2900ac6ca0..3fac8f4f4e 100644 --- a/testsuites/validation/tc-task-performance.c +++ b/testsuites/validation/tc-task-performance.c @@ -3,11 +3,11 @@ /** * @file * - * @ingroup RTEMSTestCaseRtemsTaskValPerf + * @ingroup RtemsTaskValPerf */ /* - * Copyright (C) 2021 embedded brains GmbH (http://www.embedded-brains.de) + * Copyright (C) 2021 embedded brains GmbH & Co. KG * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions @@ -60,9 +60,9 @@ #include <rtems/test.h> /** - * @defgroup RTEMSTestCaseRtemsTaskValPerf spec:/rtems/task/val/perf + * @defgroup RtemsTaskValPerf spec:/rtems/task/val/perf * - * @ingroup RTEMSTestSuiteTestsuitesPerformanceNoClock0 + * @ingroup TestsuitesPerformanceNoClock0 * * @brief This test case provides a context to run @ref RTEMSAPIClassicTasks * performance tests. @@ -113,13 +113,13 @@ typedef struct { static RtemsTaskValPerf_Context RtemsTaskValPerf_Instance; -typedef RtemsTaskValPerf_Context Context; +#define EVENT_RESTART RTEMS_EVENT_0 + +#define EVENT_SET_END RTEMS_EVENT_1 -enum { - EVENT_RESTART = RTEMS_EVENT_0, - EVENT_SET_END = RTEMS_EVENT_1, - EVENT_BUSY = RTEMS_EVENT_2 -} Event; +#define EVENT_BUSY RTEMS_EVENT_2 + +typedef RtemsTaskValPerf_Context Context; RTEMS_ALIGNED( RTEMS_TASK_STORAGE_ALIGNMENT ) static char task_storage[ RTEMS_TASK_STORAGE_SIZE( @@ -226,6 +226,12 @@ static T_fixture RtemsTaskValPerf_Fixture = { }; /** + * @defgroup RtemsTaskReqPerfConstruct spec:/rtems/task/req/perf-construct + * + * @{ + */ + +/** * @brief Construct a worker task. */ static void RtemsTaskReqPerfConstruct_Body( RtemsTaskValPerf_Context *ctx ) @@ -274,6 +280,14 @@ static bool RtemsTaskReqPerfConstruct_Teardown_Wrap( return RtemsTaskReqPerfConstruct_Teardown( ctx, delta, tic, toc, retry ); } +/** @} */ + +/** + * @defgroup RtemsTaskReqPerfRestart spec:/rtems/task/req/perf-restart + * + * @{ + */ + /** * @brief Create and start a worker task. */ @@ -340,6 +354,15 @@ static void RtemsTaskReqPerfRestart_Cleanup( RtemsTaskValPerf_Context *ctx ) DeleteTask( ctx->worker_id ); } +/** @} */ + +/** + * @defgroup RtemsTaskReqPerfRestartPreempt \ + * spec:/rtems/task/req/perf-restart-preempt + * + * @{ + */ + /** * @brief Create and start a worker task. */ @@ -422,6 +445,14 @@ static void RtemsTaskReqPerfRestartPreempt_Cleanup( DeleteTask( ctx->worker_id ); } +/** @} */ + +/** + * @defgroup RtemsTaskReqPerfRestartSelf spec:/rtems/task/req/perf-restart-self + * + * @{ + */ + /** * @brief Create and start a worker task. */ @@ -492,8 +523,17 @@ static void RtemsTaskReqPerfRestartSelf_Cleanup( DeleteTask( ctx->worker_id ); } +/** @} */ + #if defined(RTEMS_SMP) /** + * @defgroup RtemsTaskReqPerfSetSchedulerMove \ + * spec:/rtems/task/req/perf-set-scheduler-move + * + * @{ + */ + +/** * @brief Set the runner affinity. */ static void RtemsTaskReqPerfSetSchedulerMove_Prepare( @@ -572,9 +612,18 @@ static void RtemsTaskReqPerfSetSchedulerMove_Cleanup( { SetSelfAffinityOne( 0 ); } + +/** @} */ #endif /** + * @defgroup RtemsTaskReqPerfSetSchedulerNop \ + * spec:/rtems/task/req/perf-set-scheduler-nop + * + * @{ + */ + +/** * @brief Set the scheduler of the runner. */ static void RtemsTaskReqPerfSetSchedulerNop_Body( @@ -632,8 +681,17 @@ static bool RtemsTaskReqPerfSetSchedulerNop_Teardown_Wrap( ); } +/** @} */ + #if defined(RTEMS_SMP) /** + * @defgroup RtemsTaskReqPerfSetSchedulerOther \ + * spec:/rtems/task/req/perf-set-scheduler-other + * + * @{ + */ + +/** * @brief Create and start a worker task for scheduler B. */ static void RtemsTaskReqPerfSetSchedulerOther_Prepare( @@ -715,10 +773,19 @@ static void RtemsTaskReqPerfSetSchedulerOther_Cleanup( { DeleteTask( ctx->worker_id ); } + +/** @} */ #endif #if defined(RTEMS_SMP) /** + * @defgroup RtemsTaskReqPerfSetSchedulerPreempt \ + * spec:/rtems/task/req/perf-set-scheduler-preempt + * + * @{ + */ + +/** * @brief Create and start two worker tasks for scheduler B. Make the second * worker busy. */ @@ -834,9 +901,17 @@ static void RtemsTaskReqPerfSetSchedulerPreempt_Cleanup( DeleteTask( ctx->worker_2_id ); DeleteTask( ctx->worker_id ); } + +/** @} */ #endif /** + * @defgroup RtemsTaskReqPerfStart spec:/rtems/task/req/perf-start + * + * @{ + */ + +/** * @brief Create a worker task. */ static void RtemsTaskReqPerfStart_Setup( RtemsTaskValPerf_Context *ctx ) @@ -904,6 +979,15 @@ static bool RtemsTaskReqPerfStart_Teardown_Wrap( return RtemsTaskReqPerfStart_Teardown( ctx, delta, tic, toc, retry ); } +/** @} */ + +/** + * @defgroup RtemsTaskReqPerfStartPreempt \ + * spec:/rtems/task/req/perf-start-preempt + * + * @{ + */ + /** * @brief Create a worker task. */ @@ -975,6 +1059,8 @@ static bool RtemsTaskReqPerfStartPreempt_Teardown_Wrap( return RtemsTaskReqPerfStartPreempt_Teardown( ctx, delta, tic, toc, retry ); } +/** @} */ + /** * @fn void T_case_body_RtemsTaskValPerf( void ) */ |