fix: 优化低功耗流程
1.normal和其它模式分离,流程分层化,使得结构较为清晰 2.tick timer处理实现优化为注册对应机制则默认支持,不注册则不执行,简化使用逻辑 3.添加 pm测试用例 Close #I46VXK Signed-off-by: zhushengle <zhushengle@huawei.com> Change-Id: I7810ce0ca12dce96972399adf88e8319bb487905
This commit is contained in:
@@ -1622,7 +1622,7 @@ extern UINT32 OsGetAllTskInfo(VOID);
|
||||
|
||||
extern VOID *OsTskUserStackInit(VOID* stackPtr, VOID* userSP, UINT32 userStackSize);
|
||||
|
||||
extern UINT32 OsPmEnterHandlerSet(VOID (*func)(BOOL));
|
||||
extern UINT32 OsPmEnterHandlerSet(VOID (*func)(VOID));
|
||||
|
||||
#ifdef __cplusplus
|
||||
#if __cplusplus
|
||||
|
||||
@@ -101,7 +101,7 @@ LITE_OS_SEC_DATA_INIT LOS_DL_LIST g_losFreeTask;
|
||||
LITE_OS_SEC_DATA_INIT LOS_DL_LIST g_taskRecyleList;
|
||||
LITE_OS_SEC_BSS BOOL g_taskScheduled = FALSE;
|
||||
|
||||
STATIC VOID (*PmEnter)(BOOL isIdle) = NULL;
|
||||
STATIC VOID (*PmEnter)(VOID) = NULL;
|
||||
|
||||
#if (LOSCFG_BASE_CORE_EXC_TSK_SWITCH == 1)
|
||||
TaskSwitchInfo g_taskSwitchInfo;
|
||||
@@ -142,7 +142,7 @@ STATIC VOID OsRecyleFinishedTask(VOID)
|
||||
LOS_IntRestore(intSave);
|
||||
}
|
||||
|
||||
UINT32 OsPmEnterHandlerSet(VOID (*func)(BOOL))
|
||||
UINT32 OsPmEnterHandlerSet(VOID (*func)(VOID))
|
||||
{
|
||||
if (func == NULL) {
|
||||
return LOS_NOK;
|
||||
@@ -165,7 +165,7 @@ LITE_OS_SEC_TEXT VOID OsIdleTask(VOID)
|
||||
OsRecyleFinishedTask();
|
||||
|
||||
if (PmEnter != NULL) {
|
||||
PmEnter(TRUE);
|
||||
PmEnter();
|
||||
} else {
|
||||
(VOID)HalEnterSleep();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user