Signed-off-by: yangzelin <yangzelin@talkweb.com.cn>
fix: 解决关闭SWTMR模块后无法编译的问题 关闭SWTMR模块后, 屏蔽相关全局变量以及函数调用
This commit is contained in:
parent
fcd677feba
commit
91743d3ea4
|
@ -56,7 +56,10 @@ typedef struct {
|
|||
} SortLinkAttribute;
|
||||
|
||||
extern SortLinkAttribute g_taskSortLink;
|
||||
|
||||
#if (LOSCFG_BASE_CORE_SWTMR == 1)
|
||||
extern SortLinkAttribute g_swtmrSortLink;
|
||||
#endif
|
||||
|
||||
#define OS_SORT_LINK_INVALID_TIME ((UINT64)-1)
|
||||
#define SET_SORTLIST_VALUE(sortList, value) (((SortLinkList *)(sortList))->responseTime = (value))
|
||||
|
@ -98,7 +101,11 @@ STATIC INLINE UINT64 GetSortLinkNextExpireTime(SortLinkAttribute *sortHead, UINT
|
|||
STATIC INLINE UINT64 OsGetNextExpireTime(UINT64 startTime, UINT32 tickPrecision)
|
||||
{
|
||||
UINT64 taskExpireTime = GetSortLinkNextExpireTime(&g_taskSortLink, startTime, tickPrecision);
|
||||
#if (LOSCFG_BASE_CORE_SWTMR == 1)
|
||||
UINT64 swtmrExpireTime = GetSortLinkNextExpireTime(&g_swtmrSortLink, startTime, tickPrecision);
|
||||
#else
|
||||
UINT64 swtmrExpireTime = taskExpireTime;
|
||||
#endif
|
||||
return (taskExpireTime < swtmrExpireTime) ? taskExpireTime : swtmrExpireTime;
|
||||
}
|
||||
|
||||
|
|
|
@ -1584,7 +1584,9 @@ extern UINT32 g_idleTaskID;
|
|||
* Software timer task ID.
|
||||
*
|
||||
*/
|
||||
#if (LOSCFG_BASE_CORE_SWTMR == 1)
|
||||
extern UINT32 g_swtmrTaskID;
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @ingroup los_task
|
||||
|
|
|
@ -509,7 +509,9 @@ VOID OsSchedStart(VOID)
|
|||
|
||||
OsTickSysTimerStartTimeSet(newTask->startTime);
|
||||
|
||||
#if (LOSCFG_BASE_CORE_SWTMR == 1)
|
||||
OsSwtmrResponseTimeReset(newTask->startTime);
|
||||
#endif
|
||||
|
||||
/* Initialize the schedule timeline and enable scheduling */
|
||||
g_taskScheduled = TRUE;
|
||||
|
|
|
@ -40,7 +40,10 @@ extern "C" {
|
|||
#endif /* __cplusplus */
|
||||
|
||||
SortLinkAttribute g_taskSortLink;
|
||||
|
||||
#if (LOSCFG_BASE_CORE_SWTMR == 1)
|
||||
SortLinkAttribute g_swtmrSortLink;
|
||||
#endif
|
||||
|
||||
UINT32 OsSortLinkInit(SortLinkAttribute *sortLinkHead)
|
||||
{
|
||||
|
@ -85,8 +88,10 @@ VOID OsAdd2SortLink(SortLinkList *node, UINT64 startTime, UINT32 waitTicks, Sort
|
|||
|
||||
if (type == OS_SORT_LINK_TASK) {
|
||||
sortLinkHead = &g_taskSortLink;
|
||||
#if (LOSCFG_BASE_CORE_SWTMR == 1)
|
||||
} else if (type == OS_SORT_LINK_SWTMR) {
|
||||
sortLinkHead = &g_swtmrSortLink;
|
||||
#endif
|
||||
} else {
|
||||
LOS_Panic("Sort link type error : %u\n", type);
|
||||
}
|
||||
|
@ -128,18 +133,22 @@ STATIC INLINE VOID SortLinkNodeTimeUpdate(SortLinkAttribute *sortLinkHead, UINT3
|
|||
VOID OsSortLinkResponseTimeConvertFreq(UINT32 oldFreq)
|
||||
{
|
||||
SortLinkAttribute *taskHead = &g_taskSortLink;
|
||||
SortLinkAttribute *swtmrHead = &g_swtmrSortLink;
|
||||
|
||||
SortLinkNodeTimeUpdate(taskHead, oldFreq);
|
||||
|
||||
#if (LOSCFG_BASE_CORE_SWTMR == 1)
|
||||
SortLinkAttribute *swtmrHead = &g_swtmrSortLink;
|
||||
SortLinkNodeTimeUpdate(swtmrHead, oldFreq);
|
||||
#endif
|
||||
}
|
||||
|
||||
SortLinkAttribute *OsGetSortLinkAttribute(SortLinkType type)
|
||||
{
|
||||
if (type == OS_SORT_LINK_TASK) {
|
||||
return &g_taskSortLink;
|
||||
#if (LOSCFG_BASE_CORE_SWTMR == 1)
|
||||
} else if (type == OS_SORT_LINK_SWTMR) {
|
||||
return &g_swtmrSortLink;
|
||||
#endif
|
||||
}
|
||||
|
||||
PRINT_ERR("Invalid sort link type!\n");
|
||||
|
|
|
@ -102,7 +102,11 @@ LITE_OS_SEC_BSS LosTask g_losTask;
|
|||
LITE_OS_SEC_BSS UINT16 g_losTaskLock;
|
||||
LITE_OS_SEC_BSS UINT32 g_taskMaxNum;
|
||||
LITE_OS_SEC_BSS UINT32 g_idleTaskID;
|
||||
|
||||
#if (LOSCFG_BASE_CORE_SWTMR == 1)
|
||||
LITE_OS_SEC_BSS UINT32 g_swtmrTaskID;
|
||||
#endif
|
||||
|
||||
LITE_OS_SEC_DATA_INIT LOS_DL_LIST g_losFreeTask;
|
||||
LITE_OS_SEC_DATA_INIT LOS_DL_LIST g_taskRecycleList;
|
||||
LITE_OS_SEC_BSS BOOL g_taskScheduled = FALSE;
|
||||
|
@ -118,8 +122,10 @@ STATIC_INLINE UINT32 OsCheckTaskIDValid(UINT32 taskID)
|
|||
UINT32 ret = LOS_OK;
|
||||
if (taskID == g_idleTaskID) {
|
||||
ret = LOS_ERRNO_TSK_OPERATE_IDLE;
|
||||
#if (LOSCFG_BASE_CORE_SWTMR == 1)
|
||||
} else if (taskID == g_swtmrTaskID) {
|
||||
ret = LOS_ERRNO_TSK_SUSPEND_SWTMR_NOT_ALLOWED;
|
||||
#endif
|
||||
} else if (OS_TSK_GET_INDEX(taskID) >= g_taskMaxNum) {
|
||||
ret = LOS_ERRNO_TSK_ID_INVALID;
|
||||
}
|
||||
|
@ -1212,9 +1218,11 @@ LITE_OS_SEC_TEXT_MINOR UINT32 LOS_TaskPriSet(UINT32 taskID, UINT16 taskPrio)
|
|||
return LOS_ERRNO_TSK_OPERATE_IDLE;
|
||||
}
|
||||
|
||||
#if (LOSCFG_BASE_CORE_SWTMR == 1)
|
||||
if (taskID == g_swtmrTaskID) {
|
||||
return LOS_ERRNO_TSK_OPERATE_SWTMR;
|
||||
}
|
||||
#endif
|
||||
|
||||
if (OS_CHECK_TSK_PID_NOIDLE(taskID)) {
|
||||
return LOS_ERRNO_TSK_ID_INVALID;
|
||||
|
|
Loading…
Reference in New Issue