WS63 SDK 文档 7021f4f@fbb_ws63
ws63 和 ws63e 解决方案的 SDK 文档
载入中...
搜索中...
未找到
los_perf.h 文件参考
#include "los_typedef.h"
los_perf.h 的引用(Include)关系图:
此图展示该文件直接或间接的被哪些文件引用了:

浏览源代码.

结构体

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.
 

宏定义说明

◆ LOS_PERF

#define LOS_PERF (   EVENT)

函数说明

◆ OsPerfHook()

void OsPerfHook ( UINT32  event)
extern