| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448 |
- /*
- ************************************************************************************************************************
- * uC/OS-III
- * The Real-Time Kernel
- *
- * (c) Copyright 2009-2011; Micrium, Inc.; Weston, FL
- * All rights reserved. Protected by international copyright laws.
- *
- * DEBUGGER CONSTANTS
- *
- * File : OS_DBG.C
- * By : JJL
- * Version : V3.02.00
- *
- * LICENSING TERMS:
- * ---------------
- * uC/OS-III is provided in source form for FREE short-term evaluation, for educational use or
- * for peaceful research. If you plan or intend to use uC/OS-III in a commercial application/
- * product then, you need to contact Micrium to properly license uC/OS-III for its use in your
- * application/product. We provide ALL the source code for your convenience and to help you
- * experience uC/OS-III. The fact that the source is provided does NOT mean that you can use
- * it commercially without paying a licensing fee.
- *
- * Knowledge of the source code may NOT be used to develop a similar product.
- *
- * Please help us continue to provide the embedded community with the finest software available.
- * Your honesty is greatly appreciated.
- *
- * You can contact us at www.micrium.com, or by phone at +1 (954) 217-2036.
- ************************************************************************************************************************
- */
- #include <os.h>
- #ifdef VSC_INCLUDE_SOURCE_FILE_NAMES
- const CPU_CHAR *os_dbg__c = "$Id: $";
- #endif
- CPU_INT16U const OSDbg_DbgEn = OS_CFG_DBG_EN; /* Debug constants are defined below */
- #if OS_CFG_DBG_EN > 0u
- /*
- ************************************************************************************************************************
- * DEBUG DATA
- ************************************************************************************************************************
- */
- CPU_INT08U const OSDbg_ArgChkEn = OS_CFG_ARG_CHK_EN;
- CPU_INT08U const OSDbg_AppHooksEn = OS_CFG_APP_HOOKS_EN;
- CPU_INT32U const OSDbg_EndiannessTest = 0x12345678LU; /* Variable to test CPU endianness */
- CPU_INT08U const OSDbg_CalledFromISRChkEn = OS_CFG_CALLED_FROM_ISR_CHK_EN;
- CPU_INT08U const OSDbg_FlagEn = OS_CFG_FLAG_EN;
- OS_FLAG_GRP const OSDbg_FlagGrp = { 0u };
- #if OS_CFG_FLAG_EN > 0u
- CPU_INT08U const OSDbg_FlagDelEn = OS_CFG_FLAG_DEL_EN;
- CPU_INT08U const OSDbg_FlagModeClrEn = OS_CFG_FLAG_MODE_CLR_EN;
- CPU_INT08U const OSDbg_FlagPendAbortEn = OS_CFG_FLAG_PEND_ABORT_EN;
- CPU_INT16U const OSDbg_FlagGrpSize = sizeof(OS_FLAG_GRP); /* Size in Bytes of OS_FLAG_GRP */
- CPU_INT16U const OSDbg_FlagWidth = sizeof(OS_FLAGS); /* Width (in bytes) of OS_FLAGS */
- #else
- CPU_INT08U const OSDbg_FlagDelEn = 0u;
- CPU_INT08U const OSDbg_FlagModeClrEn = 0u;
- CPU_INT08U const OSDbg_FlagPendAbortEn = 0u;
- CPU_INT16U const OSDbg_FlagGrpSize = 0u;
- CPU_INT16U const OSDbg_FlagWidth = 0u;
- #endif
- #if OS_CFG_ISR_POST_DEFERRED_EN > 0u
- CPU_INT16U const OSDbg_IntQ = sizeof(OS_INT_Q);
- #else
- CPU_INT16U const OSDbg_IntQ = 0u;
- #endif
- CPU_INT08U const OSDbg_ISRPostDeferredEn = OS_CFG_ISR_POST_DEFERRED_EN;
- OS_MEM const OSDbg_Mem = { 0u };
- CPU_INT08U const OSDbg_MemEn = OS_CFG_MEM_EN;
- #if OS_CFG_MEM_EN > 0u
- CPU_INT16U const OSDbg_MemSize = sizeof(OS_MEM); /* Mem. Partition header size (bytes) */
- #else
- CPU_INT16U const OSDbg_MemSize = 0u;
- #endif
- CPU_INT08U const OSDbg_MsgEn = OS_MSG_EN;
- #if (OS_MSG_EN) > 0u
- CPU_INT16U const OSDbg_MsgSize = sizeof(OS_MSG); /* OS_MSG size */
- CPU_INT16U const OSDbg_MsgPoolSize = sizeof(OS_MSG_POOL);
- CPU_INT16U const OSDbg_MsgQSize = sizeof(OS_MSG_Q);
- #else
- CPU_INT16U const OSDbg_MsgSize = 0u;
- CPU_INT16U const OSDbg_MsgPoolSize = 0u;
- CPU_INT16U const OSDbg_MsgQSize = 0u;
- #endif
- OS_MUTEX const OSDbg_Mutex = { 0u };
- CPU_INT08U const OSDbg_MutexEn = OS_CFG_MUTEX_EN;
- #if OS_CFG_MUTEX_EN > 0u
- CPU_INT08U const OSDbg_MutexDelEn = OS_CFG_MUTEX_DEL_EN;
- CPU_INT08U const OSDbg_MutexPendAbortEn = OS_CFG_MUTEX_PEND_ABORT_EN;
- CPU_INT16U const OSDbg_MutexSize = sizeof(OS_MUTEX); /* Size in bytes of OS_MUTEX */
- #else
- CPU_INT08U const OSDbg_MutexDelEn = 0u;
- CPU_INT08U const OSDbg_MutexPendAbortEn = 0u;
- CPU_INT16U const OSDbg_MutexSize = 0u;
- #endif
- CPU_INT08U const OSDbg_ObjTypeChkEn = OS_CFG_OBJ_TYPE_CHK_EN;
- CPU_INT08U const OSDbg_PendMultiEn = OS_CFG_PEND_MULTI_EN;
- CPU_INT16U const OSDbg_PendDataSize = sizeof(OS_PEND_DATA);
- CPU_INT16U const OSDbg_PendListSize = sizeof(OS_PEND_LIST);
- CPU_INT16U const OSDbg_PendObjSize = sizeof(OS_PEND_OBJ);
- CPU_INT16U const OSDbg_PrioMax = OS_CFG_PRIO_MAX; /* Maximum number of priorities */
- CPU_INT16U const OSDbg_PrioTblSize = sizeof(OSPrioTbl);
- CPU_INT16U const OSDbg_PtrSize = sizeof(void *); /* Size in Bytes of a pointer */
- OS_Q const OSDbg_Q = { 0u };
- CPU_INT08U const OSDbg_QEn = OS_CFG_Q_EN;
- #if OS_CFG_Q_EN > 0u
- CPU_INT08U const OSDbg_QDelEn = OS_CFG_Q_DEL_EN;
- CPU_INT08U const OSDbg_QFlushEn = OS_CFG_Q_FLUSH_EN;
- CPU_INT08U const OSDbg_QPendAbortEn = OS_CFG_Q_PEND_ABORT_EN;
- CPU_INT16U const OSDbg_QSize = sizeof(OS_Q); /* Size in bytes of OS_Q structure */
- #else
- CPU_INT08U const OSDbg_QDelEn = 0u;
- CPU_INT08U const OSDbg_QFlushEn = 0u;
- CPU_INT08U const OSDbg_QPendAbortEn = 0u;
- CPU_INT16U const OSDbg_QSize = 0u;
- #endif
- CPU_INT08U const OSDbg_SchedRoundRobinEn = OS_CFG_SCHED_ROUND_ROBIN_EN;
- OS_SEM const OSDbg_Sem = { 0u };
- CPU_INT08U const OSDbg_SemEn = OS_CFG_SEM_EN;
- #if OS_CFG_SEM_EN > 0u
- CPU_INT08U const OSDbg_SemDelEn = OS_CFG_SEM_DEL_EN;
- CPU_INT08U const OSDbg_SemPendAbortEn = OS_CFG_SEM_PEND_ABORT_EN;
- CPU_INT08U const OSDbg_SemSetEn = OS_CFG_SEM_SET_EN;
- CPU_INT16U const OSDbg_SemSize = sizeof(OS_SEM); /* Size in bytes of OS_SEM */
- #else
- CPU_INT08U const OSDbg_SemDelEn = 0u;
- CPU_INT08U const OSDbg_SemPendAbortEn = 0u;
- CPU_INT08U const OSDbg_SemSetEn = 0u;
- CPU_INT16U const OSDbg_SemSize = 0u;
- #endif
- CPU_INT16U const OSDbg_RdyList = sizeof(OS_RDY_LIST);
- CPU_INT32U const OSDbg_RdyListSize = sizeof(OSRdyList); /* Number of bytes in the ready table */
- CPU_INT08U const OSDbg_StkWidth = sizeof(CPU_STK);
- CPU_INT08U const OSDbg_StatTaskEn = OS_CFG_STAT_TASK_EN;
- CPU_INT08U const OSDbg_StatTaskStkChkEn = OS_CFG_STAT_TASK_STK_CHK_EN;
- CPU_INT08U const OSDbg_TaskChangePrioEn = OS_CFG_TASK_CHANGE_PRIO_EN;
- CPU_INT08U const OSDbg_TaskDelEn = OS_CFG_TASK_DEL_EN;
- CPU_INT08U const OSDbg_TaskQEn = OS_CFG_TASK_Q_EN;
- CPU_INT08U const OSDbg_TaskQPendAbortEn = OS_CFG_TASK_Q_PEND_ABORT_EN;
- CPU_INT08U const OSDbg_TaskProfileEn = OS_CFG_TASK_PROFILE_EN;
- CPU_INT16U const OSDbg_TaskRegTblSize = OS_CFG_TASK_REG_TBL_SIZE;
- CPU_INT08U const OSDbg_TaskSemPendAbortEn = OS_CFG_TASK_SEM_PEND_ABORT_EN;
- CPU_INT08U const OSDbg_TaskSuspendEn = OS_CFG_TASK_SUSPEND_EN;
- CPU_INT16U const OSDbg_TCBSize = sizeof(OS_TCB); /* Size in Bytes of OS_TCB */
- CPU_INT16U const OSDbg_TickSpokeSize = sizeof(OS_TICK_SPOKE);
- CPU_INT08U const OSDbg_TimeDlyHMSMEn = OS_CFG_TIME_DLY_HMSM_EN;
- CPU_INT08U const OSDbg_TimeDlyResumeEn = OS_CFG_TIME_DLY_RESUME_EN;
- OS_TMR const OSDbg_Tmr = { 0u };
- CPU_INT08U const OSDbg_TmrEn = OS_CFG_TMR_EN;
- #if OS_CFG_TMR_EN > 0u
- CPU_INT08U const OSDbg_TmrDelEn = OS_CFG_TMR_DEL_EN;
- CPU_INT16U const OSDbg_TmrSize = sizeof(OS_TMR);
- CPU_INT16U const OSDbg_TmrSpokeSize = sizeof(OS_TMR_SPOKE);
- #else
- CPU_INT08U const OSDbg_TmrDelEn = 0u;
- CPU_INT16U const OSDbg_TmrSize = 0u;
- CPU_INT16U const OSDbg_TmrSpokeSize = 0u;
- #endif
- CPU_INT16U const OSDbg_VersionNbr = OS_VERSION;
- /*$PAGE*/
- /*
- ************************************************************************************************************************
- * DEBUG DATA
- * TOTAL DATA SPACE (i.e. RAM) USED BY uC/OS-III
- ************************************************************************************************************************
- */
- CPU_INT32U const OSDbg_DataSize = sizeof(OSIntNestingCtr)
- #if OS_CFG_APP_HOOKS_EN > 0u
- + sizeof(OS_AppTaskCreateHookPtr)
- + sizeof(OS_AppTaskDelHookPtr)
- + sizeof(OS_AppTaskReturnHookPtr)
- + sizeof(OS_AppIdleTaskHookPtr)
- + sizeof(OS_AppStatTaskHookPtr)
- + sizeof(OS_AppTaskSwHookPtr)
- + sizeof(OS_AppTimeTickHookPtr)
- #endif
- + sizeof(OSIdleTaskCtr)
- + sizeof(OSIdleTaskTCB)
- #if OS_CFG_ISR_POST_DEFERRED_EN > 0u
- + sizeof(OSIntQInPtr)
- + sizeof(OSIntQOutPtr)
- + sizeof(OSIntQNbrEntries)
- + sizeof(OSIntQMaxNbrEntries)
- + sizeof(OSIntQOvfCtr)
- + sizeof(OSIntQTaskTCB)
- #endif
- + sizeof(OSRunning)
- #ifdef OS_SAFETY_CRITICAL_IEC61508
- + sizeof(OSSafetyCriticalStartFlag);
- #endif
- #if OS_CFG_FLAG_EN > 0u
- + sizeof(OSFlagQty)
- #endif
- #if OS_CFG_MEM_EN > 0u
- + sizeof(OSMemQty)
- #endif
- + sizeof(OSMsgPool)
- #if OS_CFG_MUTEX_EN > 0u
- + sizeof(OSMutexQty)
- #endif
- + sizeof(OSPrioCur)
- + sizeof(OSPrioHighRdy)
- + sizeof(OSPrioTbl)
- #if OS_CFG_Q_EN > 0u
- + sizeof(OSQQty)
- #endif
- + sizeof(OSRdyList)
- + sizeof(OSSchedLockNestingCtr)
- #if OS_CFG_SCHED_LOCK_TIME_MEAS_EN > 0u
- + sizeof(OSSchedLockTimeBegin)
- + sizeof(OSSchedLockTimeMax)
- + sizeof(OSSchedLockTimeMaxCur)
- #endif
- #if OS_CFG_SCHED_ROUND_ROBIN_EN
- + sizeof(OSSchedRoundRobinDfltTimeQuanta)
- + sizeof(OSSchedRoundRobinEn)
- #endif
- #if OS_CFG_SEM_EN > 0u
- + sizeof(OSSemQty)
- #endif
- + sizeof(OSTaskCtxSwCtr)
- + sizeof(OSTaskQty)
- #if OS_CFG_STAT_TASK_EN > 0u
- + sizeof(OSStatTaskCtr)
- + sizeof(OSStatTaskCtrMax)
- + sizeof(OSStatTaskCtrRun)
- + sizeof(OSStatTaskRdy)
- + sizeof(OSStatTaskTCB)
- + sizeof(OSStatTaskCPUUsage)
- #endif
- + sizeof(OSTickCtr)
- + sizeof(OSTickTaskTCB)
- #if OS_CFG_TMR_EN > 0u
- + sizeof(OSTmrTaskTCB)
- + sizeof(OSTmrTickCtr)
- + sizeof(OSTmrQty)
- + sizeof(OSTmrUpdateCnt)
- + sizeof(OSTmrUpdateCtr)
- #endif
- + sizeof(OSTCBCurPtr)
- + sizeof(OSTCBHighRdyPtr);
- /*$PAGE*/
- /*
- ************************************************************************************************************************
- * OS DEBUG INITIALIZATION
- *
- * Description: This function is used to make sure that debug variables that are unused in the application are not
- * optimized away. This function might not be necessary for all compilers. In this case, you should simply
- * DELETE the code in this function while still leaving the declaration of the function itself.
- *
- * Arguments : none
- *
- * Returns : none
- *
- * Note(s) : (1) This code doesn't do anything, it simply prevents the compiler from optimizing out the 'const'
- * variables which are declared in this file.
- * (2) You may decide to 'compile out' the code (by using #if 0/#endif) INSIDE the function if your compiler
- * DOES NOT optimize out the 'const' variables above.
- ************************************************************************************************************************
- */
- void OS_Dbg_Init (void)
- {
- void const *p_temp;
- p_temp = (void const *)&OSDbg_DbgEn;
- p_temp = (void const *)&OSDbg_DataSize;
- p_temp = (void const *)&OSDbg_ArgChkEn;
- p_temp = (void const *)&OSDbg_AppHooksEn;
- p_temp = (void const *)&OSDbg_EndiannessTest;
- p_temp = (void const *)&OSDbg_CalledFromISRChkEn;
- p_temp = (void const *)&OSDbg_FlagGrp;
- p_temp = (void const *)&OSDbg_FlagEn;
- #if OS_CFG_FLAG_EN > 0u
- p_temp = (void const *)&OSDbg_FlagDelEn;
- p_temp = (void const *)&OSDbg_FlagModeClrEn;
- p_temp = (void const *)&OSDbg_FlagPendAbortEn;
- p_temp = (void const *)&OSDbg_FlagGrpSize;
- p_temp = (void const *)&OSDbg_FlagWidth;
- #endif
- #if OS_CFG_ISR_POST_DEFERRED_EN > 0u
- p_temp = (void const *)&OSDbg_IntQ;
- #endif
- p_temp = (void const *)&OSDbg_ISRPostDeferredEn;
- p_temp = (void const *)&OSDbg_Mem;
- p_temp = (void const *)&OSDbg_MemEn;
- #if OS_CFG_MEM_EN > 0u
- p_temp = (void const *)&OSDbg_MemSize;
- #endif
- p_temp = (void const *)&OSDbg_MsgEn;
- #if (OS_MSG_EN) > 0u
- p_temp = (void const *)&OSDbg_MsgSize;
- p_temp = (void const *)&OSDbg_MsgPoolSize;
- p_temp = (void const *)&OSDbg_MsgQSize;
- #endif
- p_temp = (void const *)&OSDbg_Mutex;
- p_temp = (void const *)&OSDbg_MutexEn;
- #if (OS_CFG_MUTEX_EN) > 0u
- p_temp = (void const *)&OSDbg_MutexDelEn;
- p_temp = (void const *)&OSDbg_MutexPendAbortEn;
- p_temp = (void const *)&OSDbg_MutexSize;
- #endif
- p_temp = (void const *)&OSDbg_ObjTypeChkEn;
- p_temp = (void const *)&OSDbg_PendMultiEn;
- p_temp = (void const *)&OSDbg_PendDataSize;
- p_temp = (void const *)&OSDbg_PendListSize;
- p_temp = (void const *)&OSDbg_PendObjSize;
- p_temp = (void const *)&OSDbg_PrioMax;
- p_temp = (void const *)&OSDbg_PrioTblSize;
- p_temp = (void const *)&OSDbg_PtrSize;
- p_temp = (void const *)&OSDbg_Q;
- p_temp = (void const *)&OSDbg_QEn;
- #if (OS_CFG_Q_EN) > 0u
- p_temp = (void const *)&OSDbg_QDelEn;
- p_temp = (void const *)&OSDbg_QFlushEn;
- p_temp = (void const *)&OSDbg_QPendAbortEn;
- p_temp = (void const *)&OSDbg_QSize;
- #endif
- p_temp = (void const *)&OSDbg_SchedRoundRobinEn;
- p_temp = (void const *)&OSDbg_Sem;
- p_temp = (void const *)&OSDbg_SemEn;
- #if (OS_CFG_SEM_EN) > 0u
- p_temp = (void const *)&OSDbg_SemDelEn;
- p_temp = (void const *)&OSDbg_SemPendAbortEn;
- p_temp = (void const *)&OSDbg_SemSetEn;
- p_temp = (void const *)&OSDbg_SemSize;
- #endif
- p_temp = (void const *)&OSDbg_RdyList;
- p_temp = (void const *)&OSDbg_RdyListSize;
- p_temp = (void const *)&OSDbg_StkWidth;
- p_temp = (void const *)&OSDbg_StatTaskEn;
- p_temp = (void const *)&OSDbg_StatTaskStkChkEn;
- p_temp = (void const *)&OSDbg_TaskChangePrioEn;
- p_temp = (void const *)&OSDbg_TaskDelEn;
- p_temp = (void const *)&OSDbg_TaskQEn;
- p_temp = (void const *)&OSDbg_TaskQPendAbortEn;
- p_temp = (void const *)&OSDbg_TaskProfileEn;
- p_temp = (void const *)&OSDbg_TaskRegTblSize;
- p_temp = (void const *)&OSDbg_TaskSemPendAbortEn;
- p_temp = (void const *)&OSDbg_TaskSuspendEn;
- p_temp = (void const *)&OSDbg_TCBSize;
- p_temp = (void const *)&OSDbg_TickSpokeSize;
- p_temp = (void const *)&OSDbg_TimeDlyHMSMEn;
- p_temp = (void const *)&OSDbg_TimeDlyResumeEn;
- p_temp = (void const *)&OSDbg_Tmr;
- p_temp = (void const *)&OSDbg_TmrEn;
- #if (OS_CFG_TMR_EN) > 0u
- p_temp = (void const *)&OSDbg_TmrDelEn;
- p_temp = (void const *)&OSDbg_TmrSize;
- p_temp = (void const *)&OSDbg_TmrSpokeSize;
- #endif
- p_temp = (void const *)&OSDbg_VersionNbr;
- p_temp = p_temp; /* Prevent compiler warning for not using 'p_temp' */
- }
- #endif
|