perf_counter v1.9.8
A dedicated performance counter for Cortex-M Systick. It shares the SysTick with users' original SysTick function(s) without interfering with it.
|
Data Structures | |
struct | task_cycle_info_t |
struct | task_cycle_info_agent_t |
Macros | |
#define | start_task_cycle_counter(...) __start_task_cycle_counter((NULL,##__VA_ARGS__)) |
#define | stop_task_cycle_counter(...) __stop_task_cycle_counter((NULL,##__VA_ARGS__)) |
Typedefs | |
typedef struct task_cycle_info_agent_t | task_cycle_info_agent_t |
Functions | |
void | init_task_cycle_counter (void) |
initialize the default virtual cycle counter for the current task More... | |
task_cycle_info_t * | get_rtos_task_cycle_info (void) |
provide cycle information for target task More... | |
task_cycle_info_t * | init_task_cycle_info (task_cycle_info_t *ptInfo) |
intialize a given task_cycle_info_t object and enable it before registering it. More... | |
bool | enable_task_cycle_info (task_cycle_info_t *ptInfo) |
enable a given task_cycle_info_t object More... | |
bool | disable_task_cycle_info (task_cycle_info_t *ptInfo) |
disable a given task_cycle_info_t object More... | |
void | resume_task_cycle_info (task_cycle_info_t *ptInfo, bool bEnabledStatus) |
resume the enabled status of a given task_cycle_info_t object More... | |
task_cycle_info_agent_t * | register_task_cycle_agent (task_cycle_info_t *ptInfo, task_cycle_info_agent_t *ptAgent) |
register a global virtual cycle counter agent to the current task More... | |
task_cycle_info_agent_t * | unregister_task_cycle_agent (task_cycle_info_agent_t *ptAgent) |
remove a global virtual cycle counter agent from the current task More... | |
#define start_task_cycle_counter | ( | ... | ) | __start_task_cycle_counter((NULL,##__VA_ARGS__)) |
Definition at line 566 of file perf_counter.h.
#define stop_task_cycle_counter | ( | ... | ) | __stop_task_cycle_counter((NULL,##__VA_ARGS__)) |
Definition at line 569 of file perf_counter.h.
typedef struct task_cycle_info_agent_t task_cycle_info_agent_t |
Definition at line 363 of file perf_counter.h.
bool disable_task_cycle_info | ( | task_cycle_info_t * | ptInfo | ) |
disable a given task_cycle_info_t object
[in] | ptInfo | the address of target task_cycle_info_t object |
Definition at line 445 of file perf_counter.c.
bool enable_task_cycle_info | ( | task_cycle_info_t * | ptInfo | ) |
enable a given task_cycle_info_t object
[in] | ptInfo | the address of target task_cycle_info_t object |
Definition at line 432 of file perf_counter.c.
task_cycle_info_t * get_rtos_task_cycle_info | ( | void | ) |
provide cycle information for target task
Support RTOS List:
Definition at line 397 of file perf_counter.c.
Referenced by init_task_cycle_counter(), and register_task_cycle_agent().
void init_task_cycle_counter | ( | void | ) |
initialize the default virtual cycle counter for the current task
Definition at line 402 of file perf_counter.c.
References get_rtos_task_cycle_info(), and get_system_ticks().
task_cycle_info_t * init_task_cycle_info | ( | task_cycle_info_t * | ptInfo | ) |
intialize a given task_cycle_info_t object and enable it before registering it.
Definition at line 417 of file perf_counter.c.
task_cycle_info_agent_t * register_task_cycle_agent | ( | task_cycle_info_t * | ptInfo, |
task_cycle_info_agent_t * | ptAgent | ||
) |
register a global virtual cycle counter agent to the current task
[in] | ptInfo | the address of target task_cycle_info_t object |
[in] | ptAgent | an list node for the task_cycle_info_t object |
Definition at line 468 of file perf_counter.c.
References get_rtos_task_cycle_info().
void resume_task_cycle_info | ( | task_cycle_info_t * | ptInfo, |
bool | bEnabledStatus | ||
) |
resume the enabled status of a given task_cycle_info_t object
[in] | ptInfo | the address of target task_cycle_info_t object |
[in] | bEnabledStatus | the previous status |
Definition at line 458 of file perf_counter.c.
task_cycle_info_agent_t * unregister_task_cycle_agent | ( | task_cycle_info_agent_t * | ptAgent | ) |
remove a global virtual cycle counter agent from the current task
[in] | ptAgent | the list node currently in use |
remove agent from the next-list
Definition at line 507 of file perf_counter.c.