git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@443 35acf78f-673a-0410-8e92-d51de3d6d3f4

This commit is contained in:
gdisirio 2008-09-24 14:44:42 +00:00
parent c9205e2fd9
commit 3d4a6e15ed
3 changed files with 10 additions and 23 deletions

View File

@ -86,11 +86,12 @@ Win32-MinGW - ChibiOS/RT simulator and demo into a WIN32 process,
chThdCreateFromHeap() and chthdCreateFromMemoryPool(). Threads created chThdCreateFromHeap() and chthdCreateFromMemoryPool(). Threads created
through the static APIs are not affected thus the behavior is backward through the static APIs are not affected thus the behavior is backward
compatible. compatible.
- CHANGE: Modified the chThdResume() API to return the resumed thread pointer
instead of void.
- FIX: The chThdCreate() had a regression in 0.7.0, the mode parameter was - FIX: The chThdCreate() had a regression in 0.7.0, the mode parameter was
ignored. ignored.
- FIX: Removed duplicated call to chHeapInit() into chSysInit(). - FIX: Removed duplicated call to chHeapInit() into chSysInit().
- FIX: Fixed a syntax error in chheap.c, the error was only triggered when - FIX: Fixed a syntax error in chheap.c triggered by the CH_USE_DEBUG option.
the CH_USE_DEBUG option was specified.
- Added new test cases to the test suite for the new dynamic APIs. - Added new test cases to the test suite for the new dynamic APIs.
- Documentation fixes. - Documentation fixes.

View File

@ -74,15 +74,13 @@ static void memfill(uint8_t *p, uint32_t n, uint8_t v) {
* can range from \p LOWPRIO to \p HIGHPRIO. * can range from \p LOWPRIO to \p HIGHPRIO.
* @param workspace pointer to a working area dedicated to the thread stack * @param workspace pointer to a working area dedicated to the thread stack
* @param wsize size of the working area. * @param wsize size of the working area.
* @param pf the thread function. Returning from this function automatically * @param pf the thread function
* terminates the thread.
* @param arg an argument passed to the thread function. It can be \p NULL. * @param arg an argument passed to the thread function. It can be \p NULL.
* @return the pointer to the \p Thread structure allocated for the * @return the pointer to the \p Thread structure allocated for the
* thread into the working space area. * thread into the working space area.
* @note A thread can terminate by calling \p chThdExit() or by simply * @note A thread can terminate by calling \p chThdExit() or by simply
* returning from its main function. * returning from its main function.
* @note This function can be used to start a thead from within an interrupt * @note This function can be invoked from within an interrupt handler.
* handler by manually making it ready with \p chSchReadyI().
*/ */
Thread *chThdInit(void *workspace, size_t wsize, Thread *chThdInit(void *workspace, size_t wsize,
tprio_t prio, tfunc_t pf, void *arg) { tprio_t prio, tfunc_t pf, void *arg) {
@ -106,8 +104,7 @@ Thread *chThdInit(void *workspace, size_t wsize,
* @param prio the priority level for the new thread. Usually the threads are * @param prio the priority level for the new thread. Usually the threads are
* created with priority \p NORMALPRIO, priorities * created with priority \p NORMALPRIO, priorities
* can range from \p LOWPRIO to \p HIGHPRIO. * can range from \p LOWPRIO to \p HIGHPRIO.
* @param pf the thread function. Returning from this function automatically * @param pf the thread function
* terminates the thread.
* @param arg an argument passed to the thread function. It can be \p NULL. * @param arg an argument passed to the thread function. It can be \p NULL.
* @return the pointer to the \p Thread structure allocated for the * @return the pointer to the \p Thread structure allocated for the
* thread into the working space area. * thread into the working space area.
@ -127,8 +124,7 @@ Thread *chThdCreateStatic(void *workspace, size_t wsize,
* @param prio the priority level for the new thread. Usually the threads are * @param prio the priority level for the new thread. Usually the threads are
* created with priority \p NORMALPRIO, priorities * created with priority \p NORMALPRIO, priorities
* can range from \p LOWPRIO to \p HIGHPRIO. * can range from \p LOWPRIO to \p HIGHPRIO.
* @param pf the thread function. Returning from this function automatically * @param pf the thread function
* terminates the thread.
* @param arg an argument passed to the thread function. It can be \p NULL. * @param arg an argument passed to the thread function. It can be \p NULL.
* @return the pointer to the \p Thread structure allocated for the * @return the pointer to the \p Thread structure allocated for the
* thread into the working space area or \p NULL if the memory cannot * thread into the working space area or \p NULL if the memory cannot
@ -160,8 +156,7 @@ Thread *chThdCreateFromHeap(size_t wsize, tprio_t prio,
* @param prio the priority level for the new thread. Usually the threads are * @param prio the priority level for the new thread. Usually the threads are
* created with priority \p NORMALPRIO, priorities * created with priority \p NORMALPRIO, priorities
* can range from \p LOWPRIO to \p HIGHPRIO. * can range from \p LOWPRIO to \p HIGHPRIO.
* @param pf the thread function. Returning from this function automatically * @param pf the thread function
* terminates the thread.
* @param arg an argument passed to the thread function. It can be \p NULL. * @param arg an argument passed to the thread function. It can be \p NULL.
* @return the pointer to the \p Thread structure allocated for the * @return the pointer to the \p Thread structure allocated for the
* thread into the working space area or \p NULL if the memory cannot * thread into the working space area or \p NULL if the memory cannot
@ -199,16 +194,10 @@ Thread *chThdCreateFromMemoryPool(MemoryPool *mp, tprio_t prio,
* \p PRSUSPENDED state and a subsequent call to * \p PRSUSPENDED state and a subsequent call to
* \p chThdResume() will make it ready for * \p chThdResume() will make it ready for
* execution.</li> * execution.</li>
* <li>\p P_TERMINATED, this flag is usually set
* by the \p chThdTerminate() function and it is not
* normally used as parameter for this function. The
* result would be to create a thread with a termination
* request already pending.</li>
* </ul> * </ul>
* @param workspace pointer to a working area dedicated to the thread stack * @param workspace pointer to a working area dedicated to the thread stack
* @param wsize size of the working area. * @param wsize size of the working area.
* @param pf the thread function. Returning from this function automatically * @param pf the thread function
* terminates the thread.
* @param arg an argument passed to the thread function. It can be \p NULL. * @param arg an argument passed to the thread function. It can be \p NULL.
* @return the pointer to the \p Thread structure allocated for the * @return the pointer to the \p Thread structure allocated for the
* thread into the working space area. * thread into the working space area.

View File

@ -187,8 +187,6 @@ extern "C" {
#endif #endif
Thread *chThdCreate(tprio_t prio, tmode_t mode, void *workspace, Thread *chThdCreate(tprio_t prio, tmode_t mode, void *workspace,
size_t wsize, tfunc_t pf, void *arg); size_t wsize, tfunc_t pf, void *arg);
Thread *chThdCreateFast(tprio_t prio, void *workspace,
size_t wsize, tfunc_t pf);
void chThdSetPriority(tprio_t newprio); void chThdSetPriority(tprio_t newprio);
void chThdExit(msg_t msg); void chThdExit(msg_t msg);
Thread *chThdResume(Thread *tp); Thread *chThdResume(Thread *tp);
@ -254,8 +252,7 @@ extern "C" {
* can range from \p LOWPRIO to \p HIGHPRIO. * can range from \p LOWPRIO to \p HIGHPRIO.
* @param workspace pointer to a working area dedicated to the thread stack * @param workspace pointer to a working area dedicated to the thread stack
* @param wsize size of the working area. * @param wsize size of the working area.
* @param pf the thread function. Returning from this function automatically * @param pf the thread function
* terminates the thread.
* @return the pointer to the \p Thread structure allocated for the * @return the pointer to the \p Thread structure allocated for the
* thread into the working space area. * thread into the working space area.
* @note A thread can terminate by calling \p chThdExit() or by simply * @note A thread can terminate by calling \p chThdExit() or by simply