|
WS63 SDK 文档 7021f4f@fbb_ws63
ws63 和 ws63e 解决方案的 SDK 文档
|
#include "los_typedef.h"

结构体 | |
| struct | PerfEventConfig |
| struct | PerfConfigAttr |
宏定义 | |
| #define | PERF_MAX_FILTER_TSKS 32 |
| #define | PERF_MAX_EVENT 7 |
| #define | PERF_MAX_CALLCHAIN_DEPTH 10 |
| #define | PERF_BUFFER_WATERMARK_ONE_N 2 |
| #define | LOS_ERRNO_PERF_STATUS_INVALID LOS_ERRNO_OS_ERROR(LOS_MOD_PERF, 0x00) |
| #define | LOS_ERRNO_PERF_HW_INIT_ERROR LOS_ERRNO_OS_ERROR(LOS_MOD_PERF, 0x01) |
| #define | LOS_ERRNO_PERF_TIMED_INIT_ERROR LOS_ERRNO_OS_ERROR(LOS_MOD_PERF, 0x02) |
| #define | LOS_ERRNO_PERF_SW_INIT_ERROR LOS_ERRNO_OS_ERROR(LOS_MOD_PERF, 0x03) |
| #define | LOS_ERRNO_PERF_BUF_ERROR LOS_ERRNO_OS_ERROR(LOS_MOD_PERF, 0x04) |
| #define | LOS_ERRNO_PERF_INVALID_PMU LOS_ERRNO_OS_ERROR(LOS_MOD_PERF, 0x05) |
| #define | LOS_ERRNO_PERF_PMU_CONFIG_ERROR LOS_ERRNO_OS_ERROR(LOS_MOD_PERF, 0x06) |
| #define | LOS_ERRNO_PERF_CONFIG_NULL LOS_ERRNO_OS_ERROR(LOS_MOD_PERF, 0x07) |
| #define | LOS_ERRNO_PERF_CONFIG_TASK_FILTER_ERROR LOS_ERRNO_OS_ERROR(LOS_MOD_PERF, 0x08) |
| #define | LOS_ERRNO_PERF_INIT_NO_MEMERY LOS_ERRNO_OS_ERROR(LOS_MOD_PERF, 0x09) |
| #define | LOS_PERF(EVENT) |
类型定义 | |
| typedef void(* | PERF_BUF_NOTIFY_HOOK) (void) |
| typedef void(* | PERF_BUF_FLUSH_HOOK) (void *addr, UINT32 size) |
枚举 | |
| enum | PerfStatus { PERF_UNINIT , PERF_STARTING , PERF_STARTED , PERF_STOPPING , PERF_STOPED } |
| enum | PerfEventType { PERF_EVENT_TYPE_HW , PERF_EVENT_TYPE_TIMED , PERF_EVENT_TYPE_SW , PERF_EVENT_TYPE_RAW , PERF_EVENT_TYPE_MAX } |
| enum | PmuHwId { PERF_COUNT_HW_CPU_CYCLES = 0 , PERF_COUNT_HW_INSTRUCTIONS , PERF_COUNT_HW_DCACHE_REFERENCES , PERF_COUNT_HW_DCACHE_MISSES , PERF_COUNT_HW_ICACHE_REFERENCES , PERF_COUNT_HW_ICACHE_MISSES , PERF_COUNT_HW_BRANCH_INSTRUCTIONS , PERF_COUNT_HW_BRANCH_MISSES , PERF_COUNT_HW_MAX } |
| enum | PmuTimedId { PERF_COUNT_CPU_CLOCK = 0 } |
| enum | PmuSwId { PERF_COUNT_SW_TASK_SWITCH = 1 , PERF_COUNT_SW_IRQ_RESPONSE , PERF_COUNT_SW_MEM_ALLOC , PERF_COUNT_SW_MUX_PEND , PERF_COUNT_SW_MAX } |
| enum | PerfSampleType { PERF_RECORD_CPU = 1U << 0 , PERF_RECORD_TID = 1U << 1 , PERF_RECORD_TYPE = 1U << 2 , PERF_RECORD_PERIOD = 1U << 3 , PERF_RECORD_TIMESTAMP = 1U << 4 , PERF_RECORD_IP = 1U << 5 , PERF_RECORD_CALLCHAIN = 1U << 6 } |
函数 | |
| void | OsPerfHook (UINT32 event) |
| UINT32 | LOS_PerfInit (void *buf, UINT32 size) |
| Init perf. | |
| void | LOS_PerfStart (UINT32 sectionId) |
| Start perf sampling. | |
| void | LOS_PerfStop (void) |
| Stop perf sampling. | |
| UINT32 | LOS_PerfConfig (PerfConfigAttr *attr) |
| Config perf parameters. | |
| UINT32 | LOS_PerfDataRead (CHAR *dest, UINT32 size) |
| Read data from perf sample data buffer. | |
| void | LOS_PerfNotifyHookReg (const PERF_BUF_NOTIFY_HOOK func) |
| Register perf sample data buffer water mark hook function. | |
| void | LOS_PerfFlushHookReg (const PERF_BUF_FLUSH_HOOK func) |
| Register perf sample data buffer flush hook function. | |
| UINT32 | LOS_PerfDeinit (void) |
| Deinit perf. | |
| #define LOS_PERF | ( | EVENT | ) |
|
extern |