!224 feat: 新增LOSCFG_BASE_CORE_TSK_SWITCH_HOOK 宏定义配置
Merge pull request !224 from zhushengle/task
This commit is contained in:
commit
0526c14017
|
@ -233,6 +233,14 @@ extern "C" {
|
||||||
#define LOSCFG_BASE_CORE_EXC_TSK_SWITCH 0
|
#define LOSCFG_BASE_CORE_EXC_TSK_SWITCH 0
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/*
|
||||||
|
* @ingroup los_config
|
||||||
|
* Configuration item for task context switch hook
|
||||||
|
*/
|
||||||
|
#ifndef LOSCFG_BASE_CORE_TSK_SWITCH_HOOK
|
||||||
|
#define LOSCFG_BASE_CORE_TSK_SWITCH_HOOK()
|
||||||
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @ingroup los_config
|
* @ingroup los_config
|
||||||
* Define a usable task priority.Highest task priority.
|
* Define a usable task priority.Highest task priority.
|
||||||
|
|
|
@ -371,20 +371,6 @@ extern "C" {
|
||||||
|
|
||||||
#define LOS_ERRNO_TSK_TIMEOUT LOS_ERRNO_OS_ERROR(LOS_MOD_TSK, 0x23)
|
#define LOS_ERRNO_TSK_TIMEOUT LOS_ERRNO_OS_ERROR(LOS_MOD_TSK, 0x23)
|
||||||
|
|
||||||
/**
|
|
||||||
* @ingroup los_task
|
|
||||||
* Define the type of the task switching hook function.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
typedef VOID (*TSKSWITCHHOOK)(VOID);
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @ingroup los_task
|
|
||||||
* User task switching hook function.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
extern TSKSWITCHHOOK g_pfnUsrTskSwitchHook;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @ingroup los_task
|
* @ingroup los_task
|
||||||
* Define the type of the task entry function.
|
* Define the type of the task entry function.
|
||||||
|
|
|
@ -103,10 +103,6 @@ LITE_OS_SEC_BSS BOOL g_taskScheduled = FALSE;
|
||||||
|
|
||||||
STATIC VOID (*PmEnter)(BOOL isIdle) = NULL;
|
STATIC VOID (*PmEnter)(BOOL isIdle) = NULL;
|
||||||
|
|
||||||
#if (LOSCFG_BASE_CORE_TSK_MONITOR == 1)
|
|
||||||
TSKSWITCHHOOK g_pfnUsrTskSwitchHook = NULL;
|
|
||||||
#endif /* LOSCFG_BASE_CORE_TSK_MONITOR == 1 */
|
|
||||||
|
|
||||||
#if (LOSCFG_BASE_CORE_EXC_TSK_SWITCH == 1)
|
#if (LOSCFG_BASE_CORE_EXC_TSK_SWITCH == 1)
|
||||||
TaskSwitchInfo g_taskSwitchInfo;
|
TaskSwitchInfo g_taskSwitchInfo;
|
||||||
#endif
|
#endif
|
||||||
|
@ -577,9 +573,7 @@ LITE_OS_SEC_TEXT VOID OsTaskSwitchCheck(VOID)
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
if (g_pfnUsrTskSwitchHook != NULL) {
|
LOSCFG_BASE_CORE_TSK_SWITCH_HOOK();
|
||||||
g_pfnUsrTskSwitchHook();
|
|
||||||
}
|
|
||||||
|
|
||||||
#if (LOSCFG_BASE_CORE_CPUP == 1)
|
#if (LOSCFG_BASE_CORE_CPUP == 1)
|
||||||
OsTskCycleEndStart();
|
OsTskCycleEndStart();
|
||||||
|
@ -594,7 +588,6 @@ LITE_OS_SEC_TEXT_MINOR VOID OsTaskMonInit(VOID)
|
||||||
(VOID)memset_s(&g_taskSwitchInfo, sizeof(TaskSwitchInfo), 0, sizeof(TaskSwitchInfo));
|
(VOID)memset_s(&g_taskSwitchInfo, sizeof(TaskSwitchInfo), 0, sizeof(TaskSwitchInfo));
|
||||||
g_taskSwitchInfo.cntInfo.maxCnt = OS_TASK_SWITCH_INFO_COUNT;
|
g_taskSwitchInfo.cntInfo.maxCnt = OS_TASK_SWITCH_INFO_COUNT;
|
||||||
#endif
|
#endif
|
||||||
g_pfnUsrTskSwitchHook = NULL;
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
Loading…
Reference in New Issue