ChibiOS 21.11.4
|
Debug APIs and services:
chSysDisable()
.chSysSuspend()
chSysEnable()
.chSysLock()
.chSysUnlock()
.chSysLockFromISR()
.chSysUnlockFromISR()
.CH_IRQ_PROLOGUE()
.CH_IRQ_EPILOGUE()
.CH_IRQ_PROLOGUE()
missing.Debug related settings | |
#define | CH_DBG_STACK_FILL_VALUE 0x55 |
Fill value for thread stack area in debug mode. |
Macro Functions | |
#define | chDbgCheck(c) |
Function parameters check. | |
#define | chDbgAssert(c, r) |
Condition assertion. |
Data Structures | |
struct | ch_system_debug |
System debug data structure. More... |
Macros | |
#define | __dbg_check_disable() |
#define | __dbg_check_suspend() |
#define | __dbg_check_enable() |
#define | __dbg_check_lock() |
#define | __dbg_check_unlock() |
#define | __dbg_check_lock_from_isr() |
#define | __dbg_check_unlock_from_isr() |
#define | __dbg_check_enter_isr() |
#define | __dbg_check_leave_isr() |
#define | chDbgCheckClassI() |
#define | chDbgCheckClassS() |
Typedefs | |
typedef struct ch_system_debug | system_debug_t |
System debug data structure. |
Functions | |
void | __dbg_check_disable (void) |
Guard code for chSysDisable() . | |
void | __dbg_check_suspend (void) |
Guard code for chSysSuspend() . | |
void | __dbg_check_enable (void) |
Guard code for chSysEnable() . | |
void | __dbg_check_lock (void) |
Guard code for chSysLock() . | |
void | __dbg_check_unlock (void) |
Guard code for chSysUnlock() . | |
void | __dbg_check_lock_from_isr (void) |
Guard code for chSysLockFromIsr() . | |
void | __dbg_check_unlock_from_isr (void) |
Guard code for chSysUnlockFromIsr() . | |
void | __dbg_check_enter_isr (void) |
Guard code for CH_IRQ_PROLOGUE() . | |
void | __dbg_check_leave_isr (void) |
Guard code for CH_IRQ_EPILOGUE() . | |
void | chDbgCheckClassI (void) |
I-class functions context check. | |
void | chDbgCheckClassS (void) |
S-class functions context check. | |
static void | __dbg_object_init (system_debug_t *sdp) |
Debug support initialization. |
void __dbg_check_disable | ( | ) |
Definition at line 90 of file chdebug.h.
Referenced by chSysDisable().
void __dbg_check_suspend | ( | ) |
Definition at line 91 of file chdebug.h.
Referenced by chSysSuspend().
void __dbg_check_enable | ( | ) |
Definition at line 92 of file chdebug.h.
Referenced by chSysEnable().
void __dbg_check_lock | ( | ) |
Definition at line 93 of file chdebug.h.
Referenced by chSysLock().
void __dbg_check_unlock | ( | ) |
Definition at line 94 of file chdebug.h.
Referenced by chSysUnlock().
void __dbg_check_lock_from_isr | ( | ) |
Definition at line 95 of file chdebug.h.
Referenced by chSysLockFromISR().
void __dbg_check_unlock_from_isr | ( | ) |
Definition at line 96 of file chdebug.h.
Referenced by chSysUnlockFromISR().
void chDbgCheckClassI | ( | ) |
Definition at line 99 of file chdebug.h.
Referenced by chBSemGetStateI(), chBSemResetI(), chBSemSignalI(), chCondBroadcastI(), chCondSignalI(), chCoreAllocFromBaseI(), chCoreAllocFromTopI(), chEvtBroadcastFlagsI(), chEvtGetAndClearEventsI(), chEvtGetAndClearFlagsI(), chEvtRegisterMaskWithFlagsI(), chEvtSignalI(), chMBFetchI(), chMBGetFreeCountI(), chMBGetUsedCountI(), chMBPeekI(), chMBPostAheadI(), chMBPostI(), chMBResetI(), chMsgIsPendingI(), chMtxGetOwnerI(), chPoolAllocI(), chPoolFreeI(), chSchReadyI(), chSemAddCounterI(), chSemFastSignalI(), chSemFastWaitI(), chSemGetCounterI(), chSemResetWithMessageI(), chSemSignalI(), chSysIntegrityCheckI(), chSysTimerHandlerI(), chThdCreateSuspendedI(), chThdQueueIsEmptyI(), chTraceResumeI(), chTraceSuspendI(), chTraceWriteI(), chVTDoResetI(), chVTDoSetContinuousI(), chVTDoSetI(), chVTDoTickI(), chVTGetRemainingIntervalI(), chVTGetTimersStateI(), chVTGetTimeStampI(), chVTIsArmedI(), and chVTResetTimeStampI().
void chDbgCheckClassS | ( | ) |
Definition at line 100 of file chdebug.h.
Referenced by chBSemWaitS(), chBSemWaitTimeoutS(), chCondWaitS(), chCondWaitTimeoutS(), chMBFetchTimeoutS(), chMBPostAheadTimeoutS(), chMBPostTimeoutS(), chMsgReleaseS(), chMsgWaitS(), chMsgWaitTimeoutS(), chMtxLockS(), chMtxQueueNotEmptyS(), chMtxTryLockS(), chMtxUnlockS(), chSchDoYieldS(), chSchGoSleepS(), chSchGoSleepTimeoutS(), chSchRescheduleS(), chSchWakeupS(), chSemWaitS(), and chSemWaitTimeoutS().
#define CH_DBG_STACK_FILL_VALUE 0x55 |
Fill value for thread stack area in debug mode.
Definition at line 47 of file chdebug.h.
Referenced by __thd_stackfill().
#define chDbgCheck | ( | c | ) |
Function parameters check.
If the condition check fails then the kernel panics and halts.
CH_DBG_ENABLE_CHECKS
switch is specified in chconf.h
else the macro does nothing.[in] | c | the condition to be verified to be true |
Definition at line 118 of file chdebug.h.
Referenced by chCacheObjectInit(), chCondBroadcastI(), chCondObjectInit(), chCondSignal(), chCondSignalI(), chCondWaitS(), chCondWaitTimeoutS(), chCoreAllocFromBaseI(), chCoreAllocFromTopI(), chEvtBroadcastFlagsI(), chEvtDispatch(), chEvtGetAndClearFlags(), chEvtGetAndClearFlagsI(), chEvtRegisterMaskWithFlags(), chEvtRegisterMaskWithFlagsI(), chEvtSignal(), chEvtSignalI(), chEvtUnregister(), chFifoObjectInitAligned(), chGuardedPoolLoadArray(), chHeapAllocAligned(), chHeapFree(), chHeapObjectInit(), chJobObjectInit(), chMBFetchI(), chMBFetchTimeoutS(), chMBObjectInit(), chMBPostAheadI(), chMBPostAheadTimeoutS(), chMBPostI(), chMBPostTimeoutS(), chMBResetI(), chMsgSend(), chMtxLockS(), chMtxObjectInit(), chMtxTryLockS(), chMtxUnlock(), chMtxUnlockS(), chPipeObjectInit(), chPipeReadTimeout(), chPipeReset(), chPipeWriteTimeout(), chPoolAllocI(), chPoolFreeI(), chPoolLoadArray(), chPoolObjectInitAligned(), chSchReadyI(), chSchReadyI(), chSemAddCounterI(), chSemObjectInit(), chSemResetWithMessageI(), chSemSignal(), chSemSignalI(), chSemSignalWait(), chSemWaitS(), chSemWaitTimeoutS(), chThdCreateFromMemoryPool(), chThdCreateI(), chThdCreateStatic(), chThdCreateSuspendedI(), chThdDequeueAllI(), chThdDequeueNextI(), chThdEnqueueTimeoutS(), chThdSetPriority(), chThdSleepS(), chThdWait(), chTimeAddX(), chVTDoResetI(), chVTDoSetContinuousI(), chVTDoSetI(), dyn_create_object_heap(), dyn_create_object_pool(), dyn_find_object(), dyn_release_object_heap(), and dyn_release_object_pool().
#define chDbgAssert | ( | c, | |
r ) |
Condition assertion.
If the condition check fails then the kernel panics with a message and halts.
CH_DBG_ENABLE_ASSERTS
switch is specified in chconf.h
else the macro does nothing. [in] | c | the condition to be verified to be true |
[in] | r | a remark string |
Definition at line 144 of file chdebug.h.
Referenced by __sch_ready_ahead(), __sch_ready_behind(), ch_dlist_insert(), chCacheGetObject(), chCacheReleaseObjectI(), chCondWaitS(), chCondWaitTimeoutS(), chEvtDispatch(), chFifoSendObject(), chFifoSendObjectAhead(), chFifoSendObjectAheadI(), chFifoSendObjectAheadS(), chFifoSendObjectI(), chFifoSendObjectS(), chHeapFree(), chInstanceObjectInit(), chJobDispatch(), chJobDispatchTimeout(), chJobPost(), chJobPostAhead(), chJobPostAheadI(), chJobPostAheadS(), chJobPostI(), chJobPostS(), chMsgGet(), chMsgRelease(), chMtxLockS(), chMtxTryLockS(), chMtxUnlock(), chMtxUnlockS(), chPoolAllocI(), chRegNextThread(), chSchGoSleepS(), chSchGoSleepTimeoutS(), chSchReadyI(), chSchWakeupS(), chSemAddCounterI(), chSemResetWithMessageI(), chSemSignal(), chSemSignalI(), chSemSignalWait(), chSemWaitS(), chSemWaitTimeoutS(), chSysGetIdleThreadX(), chSysTimerHandlerI(), chSysUnlock(), chThdAddRef(), chThdCreate(), chThdCreateI(), chThdCreateStatic(), chThdCreateSuspended(), chThdDoDequeueNextI(), chThdDoDequeueNextI(), chThdEnqueueTimeoutS(), chThdExit(), chThdExitS(), chThdRelease(), chThdResumeI(), chThdResumeS(), chThdStart(), chThdStartI(), chThdSuspendS(), chThdSuspendTimeoutS(), chThdWait(), chTimeI2MS(), chTimeI2S(), chTimeI2US(), chTimeMS2I(), chTimeS2I(), chTimeStampDiffX(), chTimeUS2I(), chVTDoResetI(), chVTDoTickI(), chVTGetRemainingIntervalI(), chVTGetTimeStampI(), dyn_release_object_heap(), dyn_release_object_pool(), lru_get_last_s(), nil_ready_all(), vt_insert_first(), and vt_set_alarm().
typedef struct ch_system_debug system_debug_t |
System debug data structure.
void __dbg_check_disable | ( | void | ) |
Guard code for chSysDisable()
.
Definition at line 112 of file chdebug.c.
References chSysHalt(), currcore, ch_os_instance::dbg, ch_system_debug::isr_cnt, ch_system_debug::lock_cnt, and unlikely.
void __dbg_check_suspend | ( | void | ) |
Guard code for chSysSuspend()
.
Definition at line 126 of file chdebug.c.
References chSysHalt(), currcore, ch_os_instance::dbg, ch_system_debug::isr_cnt, ch_system_debug::lock_cnt, and unlikely.
void __dbg_check_enable | ( | void | ) |
Guard code for chSysEnable()
.
Definition at line 140 of file chdebug.c.
References chSysHalt(), currcore, ch_os_instance::dbg, ch_system_debug::isr_cnt, ch_system_debug::lock_cnt, and unlikely.
void __dbg_check_lock | ( | void | ) |
Guard code for chSysLock()
.
Definition at line 154 of file chdebug.c.
References chSysHalt(), currcore, ch_os_instance::dbg, ch_system_debug::isr_cnt, ch_system_debug::lock_cnt, and unlikely.
void __dbg_check_unlock | ( | void | ) |
Guard code for chSysUnlock()
.
Definition at line 169 of file chdebug.c.
References chSysHalt(), currcore, ch_os_instance::dbg, ch_system_debug::isr_cnt, ch_system_debug::lock_cnt, and unlikely.
void __dbg_check_lock_from_isr | ( | void | ) |
Guard code for chSysLockFromIsr()
.
Definition at line 184 of file chdebug.c.
References chSysHalt(), currcore, ch_os_instance::dbg, ch_system_debug::isr_cnt, ch_system_debug::lock_cnt, and unlikely.
void __dbg_check_unlock_from_isr | ( | void | ) |
Guard code for chSysUnlockFromIsr()
.
Definition at line 199 of file chdebug.c.
References chSysHalt(), currcore, ch_os_instance::dbg, ch_system_debug::isr_cnt, ch_system_debug::lock_cnt, and unlikely.
void __dbg_check_enter_isr | ( | void | ) |
Guard code for CH_IRQ_PROLOGUE()
.
Definition at line 214 of file chdebug.c.
References chSysHalt(), currcore, ch_os_instance::dbg, ch_system_debug::isr_cnt, ch_system_debug::lock_cnt, port_lock_from_isr(), port_unlock_from_isr(), and unlikely.
void __dbg_check_leave_isr | ( | void | ) |
Guard code for CH_IRQ_EPILOGUE()
.
Definition at line 231 of file chdebug.c.
References chSysHalt(), currcore, ch_os_instance::dbg, ch_system_debug::isr_cnt, ch_system_debug::lock_cnt, port_lock_from_isr(), port_unlock_from_isr(), and unlikely.
void chDbgCheckClassI | ( | void | ) |
I-class functions context check.
Verifies that the system is in an appropriate state for invoking an I-class API function. A panic is generated if the state is not compatible.
Definition at line 251 of file chdebug.c.
References chSysHalt(), currcore, ch_os_instance::dbg, ch_system_debug::isr_cnt, ch_system_debug::lock_cnt, and unlikely.
void chDbgCheckClassS | ( | void | ) |
S-class functions context check.
Verifies that the system is in an appropriate state for invoking an S-class API function. A panic is generated if the state is not compatible.
Definition at line 268 of file chdebug.c.
References chSysHalt(), currcore, ch_os_instance::dbg, ch_system_debug::isr_cnt, ch_system_debug::lock_cnt, and unlikely.
|
inlinestatic |
Debug support initialization.
[out] | sdp | pointer to the system_debug_t structure |
Definition at line 192 of file chdebug.h.
References ch_system_debug::isr_cnt, ch_system_debug::lock_cnt, and ch_system_debug::panic_msg.
Referenced by chInstanceObjectInit().