RTOS2 Documentation Updates
diff --git a/CMSIS/DoxyGen/RTOS2/src/cmsis_os2_Kernel.txt b/CMSIS/DoxyGen/RTOS2/src/cmsis_os2_Kernel.txt
index a5ac07d..874be23 100644
--- a/CMSIS/DoxyGen/RTOS2/src/cmsis_os2_Kernel.txt
+++ b/CMSIS/DoxyGen/RTOS2/src/cmsis_os2_Kernel.txt
@@ -95,7 +95,7 @@
/**
\fn uint32_t osKernelLock (void)
\details
-
+Allows to lock all task switches.
\b Example
\code{.c}
uint32_t lock;
@@ -112,18 +112,48 @@
/**
\fn void osKernelUnlock (void)
\details
-
+Resumes from \ref osKernelLock.
*/
/*=======0=========1=========2=========3=========4=========5=========6=========7=========8=========9=========0=========1====*/
/**
\fn uint32_t osKernelSuspend (void)
\details
+CMSIS-RTOS provides extension for tick-less operation which is useful for applications that use extensively low-power modes where the SysTick timer is also disabled. To provide a time-tick in such power-saving modes a wake-up timer is used to derive timer intervals. The functions osKernelSuspend and osKernelResume control the tick-less operation.
+
+\b Example
+\code{.c}
+void os_idle_demon (void) {
+ /* The idle demon is a system thread, running when no other thread is */
+ /* ready to run. */
+ unsigned int sleep;
+
+ for (;;) {
+ /* HERE: include optional user code to be executed when no task runs.*/
+ sleep = os_suspend(); /* Suspend RTX thread scheduler */
+
+ if (sleep) { /* How long can we sleep? */
+ /* "sleep" is in RTX Timer Ticks which is 1ms in this configuration */
+
+ /* Setup wake-up e.g. watchdog */
+
+ /* Enter Power-down mode */
+ __WFE(); /* Enter Power-down mode */
+
+ /* After Wake-up */
+ sleep = tc; /* Adjust with cycles slept */
+ }
+
+ os_resume(sleep); /* Resume thread scheduler */
+ }
+}
+\endcode
*/
/*=======0=========1=========2=========3=========4=========5=========6=========7=========8=========9=========0=========1====*/
/**
-\fn void osKernelResume (uint32_t sleep_time)
+\fn void osKernelResume (uint32_t sleep_ticks)
\details
+See \ref osKernelSuspend.
*/
/*=======0=========1=========2=========3=========4=========5=========6=========7=========8=========9=========0=========1====*/
diff --git a/CMSIS/DoxyGen/RTOS2/src/cmsis_os2_Status.txt b/CMSIS/DoxyGen/RTOS2/src/cmsis_os2_Status.txt
index f50c526..2625077 100644
--- a/CMSIS/DoxyGen/RTOS2/src/cmsis_os2_Status.txt
+++ b/CMSIS/DoxyGen/RTOS2/src/cmsis_os2_Status.txt
@@ -30,7 +30,6 @@
/*=======0=========1=========2=========3=========4=========5=========6=========7=========8=========9=========0=========1====*/
/** \def osFlagsWaitAny
-\todo
Reference:
- \ref osEventFlagsWait
- \ref osThreadFlagsWait
diff --git a/CMSIS/DoxyGen/RTOS2/src/cmsis_os2_Thread.txt b/CMSIS/DoxyGen/RTOS2/src/cmsis_os2_Thread.txt
index 904e899..9b053b2 100644
--- a/CMSIS/DoxyGen/RTOS2/src/cmsis_os2_Thread.txt
+++ b/CMSIS/DoxyGen/RTOS2/src/cmsis_os2_Thread.txt
@@ -204,12 +204,6 @@
osThreadExit();
}
\endcode
-
-
-
-
-
-
@{
*/
@@ -445,8 +439,6 @@
Changes the attribute of a thread specified in \em thread_id to \ref osThreadDetached. Detached threads are not joinable with \ref osThreadJoin.
When a detached thread is terminated all resources are returned to the system. The behaviour of \ref osThreadDetach on an already detached thread is undefined.
-\todo : describe
-
\note
Cannot be called from \ref CMSIS_RTOS_ISR_Calls "Interrupt Service Routines".
*/
@@ -505,6 +497,20 @@
}
\endcode
*/
+
+*/
+/*=======0=========1=========2=========3=========4=========5=========6=========7=========8=========9=========0=========1====*/
+/**
+\fn uint32_t osThreadGetStackSpace (osThreadId_t thread_id);
+\details
+
+osThreadGetStackSpace returns the size of unused stack space for the thread passed in thread_id.
+If this function is not implemented or stack checking is disabled it will return 0.
+
+\note
+Cannot be called from \ref CMSIS_RTOS_ISR_Calls "Interrupt Service Routines".
+*/
+
/// @}