diff options
author | Joel Sherrill <joel.sherrill@oarcorp.com> | 2013-02-02 15:19:01 -0600 |
---|---|---|
committer | Joel Sherrill <joel.sherrill@oarcorp.com> | 2013-02-02 15:19:01 -0600 |
commit | dd7b83550dfb73f5ec1b7dec3b21d730779ddeb2 (patch) | |
tree | 3db0eac5b55ed5edcf985baed9f19736c931de47 /cpukit/rtems | |
parent | Merge branch 'master' of ssh://git.rtems.org/data/git/rtems (diff) | |
parent | fstests/fsrdwr: Free allocated memory (diff) | |
download | rtems-dd7b83550dfb73f5ec1b7dec3b21d730779ddeb2.tar.bz2 |
Merge branch 'master' of ssh://git.rtems.org/data/git/rtems
Diffstat (limited to 'cpukit/rtems')
56 files changed, 1764 insertions, 1603 deletions
diff --git a/cpukit/rtems/include/rtems.h b/cpukit/rtems/include/rtems.h index 68c6a0b7b9..a644fa051c 100644 --- a/cpukit/rtems/include/rtems.h +++ b/cpukit/rtems/include/rtems.h @@ -1,17 +1,19 @@ /** * @file * - * @ingroup ClassicRTEMS + * @defgroup ClassicRTEMS RTEMS Classic API + * + * @brief RTEMS Classic API * - * @brief Provides the public interface to the RTEMS Classic API. + * the Public Interface to the RTEMS Classic API */ -/* COPYRIGHT (c) 1989-2008. - * On-Line Applications Research Corporation (OAR). +/* COPYRIGHT (c) 1989-2008. + * On-Line Applications Research Corporation (OAR). * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.com/license/LICENSE. + * The license and distribution terms for this file may be + * found in the file LICENSE in this distribution or at + * http://www.rtems.com/license/LICENSE. */ #ifndef _RTEMS_H @@ -21,9 +23,8 @@ * @defgroup ClassicRTEMS RTEMS Classic API * * RTEMS Classic API definitions and modules. - * - * @{ */ +/**@{*/ #ifdef __cplusplus extern "C" { @@ -158,7 +159,7 @@ const char *rtems_get_version_string(void); * risk of blown stacks for most user applications. Using this constant when * specifying the task stack size, indicates that the stack size will be at * least RTEMS_MINIMUM_STACK_SIZE bytes in size. If the user configured minimum - * stack size is larger than the recommended minimum, then it will be used. + * stack size is larger than the recommended minimum, then it will be used. */ #define RTEMS_MINIMUM_STACK_SIZE STACK_MINIMUM_SIZE @@ -174,7 +175,7 @@ const char *rtems_get_version_string(void); * minimum stack size value, you may get a stack size that is smaller or larger * than the recommended minimum. This can be used to provide large stacks for * all tasks on complex applications or small stacks on applications that are - * trying to conserve memory. + * trying to conserve memory. */ #define RTEMS_CONFIGURED_MINIMUM_STACK_SIZE 0 diff --git a/cpukit/rtems/include/rtems/rtems/asr.h b/cpukit/rtems/include/rtems/rtems/asr.h index 372f4c7073..6516233328 100644 --- a/cpukit/rtems/include/rtems/rtems/asr.h +++ b/cpukit/rtems/include/rtems/rtems/asr.h @@ -1,19 +1,22 @@ /** * @file rtems/rtems/asr.h * - * @brief Constants and Structures Associated with the Asynchronous Signal Handler + * @defgroup ClassicASR ASR Support * - * This include file contains all the constants and structures associated - * with the Asynchronous Signal Handler. This Handler provides the low-level - * support required by the Signal Manager. + * @ingroup ClassicRTEMS + * @brief Asynchronous Signal Handler + * + * This include file contains all the constants and structures associated + * with the Asynchronous Signal Handler. This Handler provides the low-level + * support required by the Signal Manager. */ -/* COPYRIGHT (c) 1989-2008. - * On-Line Applications Research Corporation (OAR). +/* COPYRIGHT (c) 1989-2008. + * On-Line Applications Research Corporation (OAR). * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.com/license/LICENSE. + * The license and distribution terms for this file may be + * found in the file LICENSE in this distribution or at + * http://www.rtems.com/license/LICENSE. */ #ifndef _RTEMS_RTEMS_ASR_H diff --git a/cpukit/rtems/include/rtems/rtems/attr.h b/cpukit/rtems/include/rtems/rtems/attr.h index 674ee08eff..4753e3acee 100644 --- a/cpukit/rtems/include/rtems/rtems/attr.h +++ b/cpukit/rtems/include/rtems/rtems/attr.h @@ -1,16 +1,21 @@ /** * @file rtems/rtems/attr.h * - * This include file contains all information about the Object Attributes - * Handler. + * @defgroup ClassicAttributes Attributes + * + * @ingroup ClassicRTEMS + * @brief Object Attributes Handler + * + * This include file contains all information about the Object Attributes + * Handler. */ -/* COPYRIGHT (c) 1989-2008. - * On-Line Applications Research Corporation (OAR). +/* COPYRIGHT (c) 1989-2008. + * On-Line Applications Research Corporation (OAR). * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.com/license/LICENSE. + * The license and distribution terms for this file may be + * found in the file LICENSE in this distribution or at + * http://www.rtems.com/license/LICENSE. */ #ifndef _RTEMS_RTEMS_ATTR_H diff --git a/cpukit/rtems/include/rtems/rtems/barrier.h b/cpukit/rtems/include/rtems/rtems/barrier.h index b7e74839a5..b27f81b378 100644 --- a/cpukit/rtems/include/rtems/rtems/barrier.h +++ b/cpukit/rtems/include/rtems/rtems/barrier.h @@ -1,49 +1,53 @@ /** * @file rtems/rtems/barrier.h * - * @brief Constants and Structures Associated with the Barrier Manager + * @defgroup ClassicBarrier Barriers * - * This include file contains all the constants and structures associated - * with the Barrier Manager. + * @ingroup ClassicRTEMS + * @brief Classic API Barrier Manager * - * Directives provided are: + * This include file contains all the constants and structures associated + * with the Barrier Manager. * - * - create a barrier - * - get an ID of a barrier - * - delete a barrier - * - wait for a barrier - * - signal a barrier + * Directives provided are: + * + * - create a barrier + * - get an ID of a barrier + * - delete a barrier + * - wait for a barrier + * - signal a barrier */ -/* COPYRIGHT (c) 1989-2008. - * On-Line Applications Research Corporation (OAR). +/* COPYRIGHT (c) 1989-2008. + * On-Line Applications Research Corporation (OAR). * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.com/license/LICENSE. + * The license and distribution terms for this file may be + * found in the file LICENSE in this distribution or at + * http://www.rtems.com/license/LICENSE. */ #ifndef _RTEMS_RTEMS_BARRIER_H #define _RTEMS_RTEMS_BARRIER_H /** - * @defgroup ClassicBarrier Barriers + * @defgroup ClassicBarrier Barriers * - * @ingroup ClassicRTEMS + * @ingroup ClassicRTEMS * - * This encapsulates functionality which XXX + * This encapsulates functionality which implements the Classic API + * Barrier Manager. */ /**@{*/ /** - * @brief Instantiate Barrier Data + * @brief Instantiate Barrier Data * - * Barrier Manager -- Instantiate Data + * Barrier Manager -- Instantiate Data * - * This constant is defined to extern most of the time when using - * this header file. However by defining it to nothing, the data - * declared in this header file can be instantiated. This is done - * in a single per manager file. + * This constant is defined to extern most of the time when using + * this header file. However by defining it to nothing, the data + * declared in this header file can be instantiated. This is done + * in a single per manager file. */ #ifndef RTEMS_BARRIER_EXTERN #define RTEMS_BARRIER_EXTERN extern @@ -86,23 +90,23 @@ RTEMS_BARRIER_EXTERN Objects_Information _Barrier_Information; void _Barrier_Manager_initialization(void); /** - * @brief RTEMS Create Barrier + * @brief RTEMS Create Barrier * - * Barrier Manager -- Create a Barrier Instance + * Barrier Manager -- Create a Barrier Instance * - * This routine implements the rtems_barrier_create directive. The - * barrier will have the name name. The starting count for - * the barrier is count. The attribute_set determines if - * the barrier is global or local and the thread queue - * discipline. It returns the id of the created barrier in ID. + * This routine implements the rtems_barrier_create directive. The + * barrier will have the name name. The starting count for + * the barrier is count. The attribute_set determines if + * the barrier is global or local and the thread queue + * discipline. It returns the id of the created barrier in ID. * - * @param[in] name is the name of this barrier instance. - * @param[in] attribute_set specifies the attributes of this barrier instance. - * @param[in] maximum_waiters is the maximum number of threads which will - * be allowed to concurrently wait at the barrier. - * @param[out] id will contain the id of this barrier. + * @param[in] name is the name of this barrier instance. + * @param[in] attribute_set specifies the attributes of this barrier instance. + * @param[in] maximum_waiters is the maximum number of threads which will + * be allowed to concurrently wait at the barrier. + * @param[out] id will contain the id of this barrier. * - * @return a status code indicating success or the reason for failure. + * @retval a status code indicating success or the reason for failure. */ rtems_status_code rtems_barrier_create( rtems_name name, @@ -112,20 +116,20 @@ rtems_status_code rtems_barrier_create( ); /** - * @brief RTEMS Barrier name to Id + * @brief RTEMS Barrier name to Id * - * This routine implements the rtems_barrier_ident directive. - * This directive returns the barrier ID associated with name. - * If more than one barrier is named name, then the barrier - * to which the ID belongs is arbitrary. node indicates the - * extent of the search for the ID of the barrier named name. - * The search can be limited to a particular node or allowed to - * encompass all nodes. + * This routine implements the rtems_barrier_ident directive. + * This directive returns the barrier ID associated with name. + * If more than one barrier is named name, then the barrier + * to which the ID belongs is arbitrary. node indicates the + * extent of the search for the ID of the barrier named name. + * The search can be limited to a particular node or allowed to + * encompass all nodes. * - * @param[in] name is the name of this barrier instance. - * @param[out] id will contain the id of this barrier. + * @param[in] name is the name of this barrier instance. + * @param[out] id will contain the id of this barrier. * - * @return a status code indicating success or the reason for failure. + * @retval a status code indicating success or the reason for failure. */ rtems_status_code rtems_barrier_ident( rtems_name name, @@ -133,34 +137,34 @@ rtems_status_code rtems_barrier_ident( ); /** - * @brief RTEMS Delete Barrier + * @brief RTEMS Delete Barrier * - * This routine implements the rtems_barrier_delete directive. The - * barrier indicated by @a id is deleted. The barrier is freed back to the - * inactive barrier chain. + * This routine implements the rtems_barrier_delete directive. The + * barrier indicated by @a id is deleted. The barrier is freed back to the + * inactive barrier chain. * * - * @param[in] id indicates the barrier to delete + * @param[in] id indicates the barrier to delete * - * @return a status code indicating success or the reason for failure. + * @retval a status code indicating success or the reason for failure. */ rtems_status_code rtems_barrier_delete( rtems_id id ); /** - * @brief RTEMS Barrier Wait + * @brief RTEMS Barrier Wait * - * This routine implements the rtems_barrier_wait directive. It - * attempts to wait at the barrier associated with @a id. The calling task - * may block waiting for the barrier with an optional timeout of @a timeout - * clock ticks. + * This routine implements the rtems_barrier_wait directive. It + * attempts to wait at the barrier associated with @a id. The calling task + * may block waiting for the barrier with an optional timeout of @a timeout + * clock ticks. * - * @param[in] id indicates the barrier to wait at. - * @param[in] timeout is the maximum length of time in ticks the calling - * thread is willing to block. + * @param[in] id indicates the barrier to wait at. + * @param[in] timeout is the maximum length of time in ticks the calling + * thread is willing to block. * - * @return a status code indicating success or the reason for failure. + * @retval a status code indicating success or the reason for failure. */ rtems_status_code rtems_barrier_wait( rtems_id id, @@ -168,19 +172,19 @@ rtems_status_code rtems_barrier_wait( ); /** - * @brief RTEMS Barrier Release + * @brief RTEMS Barrier Release * - * Barrier Manager -- Release Tasks Waitng at a Barrier + * Barrier Manager -- Release Tasks Waitng at a Barrier * - * This routine implements the rtems_barrier_release directive. It - * unblocks all of the threads waiting on the barrier associated with - * @a id. The number of threads unblocked is returned in @a released. + * This routine implements the rtems_barrier_release directive. It + * unblocks all of the threads waiting on the barrier associated with + * @a id. The number of threads unblocked is returned in @a released. * * - * @param[in] id indicates the barrier to wait at. - * @param[out] released will contain the number of threads unblocked. + * @param[in] id indicates the barrier to wait at. + * @param[out] released will contain the number of threads unblocked. * - * @return a status code indicating success or the reason for failure. + * @retval a status code indicating success or the reason for failure. */ rtems_status_code rtems_barrier_release( rtems_id id, @@ -188,14 +192,14 @@ rtems_status_code rtems_barrier_release( ); /** - * @brief Translate SuperCore Barrier Status Code to RTEMS Status Code + * @brief Translate SuperCore Barrier Status Code to RTEMS Status Code * - * This function returns a RTEMS status code based on the barrier - * status code specified. + * This function returns a RTEMS status code based on the barrier + * status code specified. * - * @param[in] the_status is the SuperCore Barrier status to translate. + * @param[in] the_status is the SuperCore Barrier status to translate. * - * @return a status code indicating success or the reason for failure. + * @retval a status code indicating success or the reason for failure. */ rtems_status_code _Barrier_Translate_core_barrier_return_code ( CORE_barrier_Status the_status diff --git a/cpukit/rtems/include/rtems/rtems/barriermp.h b/cpukit/rtems/include/rtems/rtems/barriermp.h index 102979c36b..d2a203b162 100644 --- a/cpukit/rtems/include/rtems/rtems/barriermp.h +++ b/cpukit/rtems/include/rtems/rtems/barriermp.h @@ -1,16 +1,18 @@ /** * @file rtems/rtems/barriermp.h * - * This include file contains all the constants and structures associated - * with the Multiprocessing Support in the Barrier Manager. + * @brief MP Support in the Barrier Manager + * + * This include file contains all the constants and structures associated + * with the Multiprocessing Support in the Barrier Manager. */ -/* COPYRIGHT (c) 1989-2008. - * On-Line Applications Research Corporation (OAR). +/* COPYRIGHT (c) 1989-2008. + * On-Line Applications Research Corporation (OAR). * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.com/license/LICENSE. + * The license and distribution terms for this file may be + * found in the file LICENSE in this distribution or at + * http://www.rtems.com/license/LICENSE. */ #ifndef _RTEMS_RTEMS_SEMMP_H @@ -23,7 +25,7 @@ * * This encapsulates functionality which XXX */ -/**{*/ +/**@{*/ #ifdef __cplusplus extern "C" { diff --git a/cpukit/rtems/include/rtems/rtems/cache.h b/cpukit/rtems/include/rtems/rtems/cache.h index 95cf14f741..c4bc79dc97 100644 --- a/cpukit/rtems/include/rtems/rtems/cache.h +++ b/cpukit/rtems/include/rtems/rtems/cache.h @@ -1,32 +1,35 @@ /** * @file rtems/rtems/cache.h * - * @brief Functionality Associated with the Cache Manager + * @defgroup ClassicCache Cache * - * Cache Manager + * @ingroup ClassicRTEMS + * @brief Cache Manager + * + * Functionality Associated with the Cache Manager */ -/* COPYRIGHT (c) 1989-2008. - * On-Line Applications Research Corporation (OAR). +/* COPYRIGHT (c) 1989-2008. + * On-Line Applications Research Corporation (OAR). * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.com/license/LICENSE. + * The license and distribution terms for this file may be + * found in the file LICENSE in this distribution or at + * http://www.rtems.com/license/LICENSE. * * - * The functions in this file define the API to the RTEMS Cache Manager and - * are divided into data cache and instruction cache functions. Data cache - * functions are only meaningful if a data cache is supported. Instruction - * cache functions are only meaningful if an instruction cache is supported. + * The functions in this file define the API to the RTEMS Cache Manager and + * are divided into data cache and instruction cache functions. Data cache + * functions are only meaningful if a data cache is supported. Instruction + * cache functions are only meaningful if an instruction cache is supported. * - * The functions below are implemented with CPU dependent support routines - * implemented as part of libcpu. In the event that a CPU does not support a - * specific function, the CPU dependent routine does nothing (but does exist). + * The functions below are implemented with CPU dependent support routines + * implemented as part of libcpu. In the event that a CPU does not support a + * specific function, the CPU dependent routine does nothing (but does exist). * - * At this point, the Cache Manager makes no considerations, and provides no - * support for BSP specific issues such as a secondary cache. In such a system, - * the CPU dependent routines would have to be modified, or a BSP layer added - * to this Manager. + * At this point, the Cache Manager makes no considerations, and provides no + * support for BSP specific issues such as a secondary cache. In such a system, + * the CPU dependent routines would have to be modified, or a BSP layer added + * to this Manager. */ #ifndef _RTEMS_RTEMS_CACHE_H diff --git a/cpukit/rtems/include/rtems/rtems/clock.h b/cpukit/rtems/include/rtems/rtems/clock.h index 549dc798c9..3254b59dc1 100644 --- a/cpukit/rtems/include/rtems/rtems/clock.h +++ b/cpukit/rtems/include/rtems/rtems/clock.h @@ -1,27 +1,30 @@ /** * @file rtems/rtems/clock.h * - * @brief Constants and Structures Associated with the Clock Manager + * @defgroup ClassicClock Clocks * - * This include file contains all the constants and structures associated - * with the Clock Manager. This manager provides facilities to set, obtain, - * and continually update the current date and time. + * @ingroup ClassicRTEMS + * @brief Clock Manager API * - * This manager provides directives to: + * This include file contains all the constants and structures associated + * with the Clock Manager. This manager provides facilities to set, obtain, + * and continually update the current date and time. * - * - set the current date and time - * - obtain the current date and time - * - set the nanoseconds since last clock tick handler - * - announce a clock tick - * - obtain the system uptime + * This manager provides directives to: + * + * - set the current date and time + * - obtain the current date and time + * - set the nanoseconds since last clock tick handler + * - announce a clock tick + * - obtain the system uptime */ -/* COPYRIGHT (c) 1989-2008. - * On-Line Applications Research Corporation (OAR). +/* COPYRIGHT (c) 1989-2008. + * On-Line Applications Research Corporation (OAR). * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.com/license/LICENSE. + * The license and distribution terms for this file may be + * found in the file LICENSE in this distribution or at + * http://www.rtems.com/license/LICENSE. */ #ifndef _RTEMS_RTEMS_CLOCK_H @@ -70,21 +73,21 @@ typedef Watchdog_Nanoseconds_since_last_tick_routine rtems_nanoseconds_extension_routine; /** - * @brief Obtain Current Time of Day + * @brief Obtain Current Time of Day * - * This routine implements the rtems_clock_get directive. It returns - * one of the following: - * + current time of day - * + seconds since epoch - * + ticks since boot - * + ticks per second + * This routine implements the rtems_clock_get directive. It returns + * one of the following: + * + current time of day + * + seconds since epoch + * + ticks since boot + * + ticks per second * - * @param[in] option is the format of time to return - * @param[in] time_buffer points to the output area + * @param[in] option is the format of time to return + * @param[in] time_buffer points to the output area * - * @return This method returns RTEMS_SUCCESSFUL if there was not an - * error. Otherwise, a status code is returned indicating the - * source of the error. + * @retval This method returns RTEMS_SUCCESSFUL if there was not an + * error. Otherwise, a status code is returned indicating the + * source of the error. */ rtems_status_code rtems_clock_get( rtems_clock_get_options option, @@ -92,189 +95,191 @@ rtems_status_code rtems_clock_get( ); /** - * @brief Obtain Current Time of Day (Classic TOD) + * @brief Obtain Current Time of Day (Classic TOD) * - * This routine implements the rtems_clock_get_tod directive. It returns - * the current time of day in the format defined by RTEID. + * This routine implements the rtems_clock_get_tod directive. It returns + * the current time of day in the format defined by RTEID. * - * Clock Manager - rtems_clock_get_tod + * Clock Manager - rtems_clock_get_tod * - * @param[in] time_buffer points to the time of day structure + * @param[in] time_buffer points to the time of day structure * - * @return This method returns RTEMS_SUCCESSFUL if there was not an - * error. Otherwise, a status code is returned indicating the - * source of the error. If successful, the time_buffer will - * be filled in with the current time of day. + * @retval This method returns RTEMS_SUCCESSFUL if there was not an + * error. Otherwise, a status code is returned indicating the + * source of the error. If successful, the time_buffer will + * be filled in with the current time of day. */ rtems_status_code rtems_clock_get_tod( rtems_time_of_day *time_buffer ); /** - * @brief Obtain TOD in struct timeval Format + * @brief Obtain TOD in struct timeval Format * - * This routine implements the rtems_clock_get_tod_timeval - * directive. + * This routine implements the rtems_clock_get_tod_timeval + * directive. * - * @param[in] time points to the struct timeval variable to fill in + * @param[in] time points to the struct timeval variable to fill in * - * @return This method returns RTEMS_SUCCESSFUL if there was not an - * error. Otherwise, a status code is returned indicating the - * source of the error. If successful, the time will - * be filled in with the current time of day. + * @retval This method returns RTEMS_SUCCESSFUL if there was not an + * error. Otherwise, a status code is returned indicating the + * source of the error. If successful, the time will + * be filled in with the current time of day. */ rtems_status_code rtems_clock_get_tod_timeval( struct timeval *time ); /** - * @brief Obtain Seconds Since Epoch + * @brief Obtain Seconds Since Epoch * - * This routine implements the rtems_clock_get_seconds_since_epoch - * directive. + * This routine implements the rtems_clock_get_seconds_since_epoch + * directive. * - * @param[in] the_interval points to the interval variable to fill in + * @param[in] the_interval points to the interval variable to fill in * - * @return This method returns RTEMS_SUCCESSFUL if there was not an - * error. Otherwise, a status code is returned indicating the - * source of the error. If successful, the time_buffer will - * be filled in with the current time of day. + * @retval This method returns RTEMS_SUCCESSFUL if there was not an + * error. Otherwise, a status code is returned indicating the + * source of the error. If successful, the time_buffer will + * be filled in with the current time of day. */ rtems_status_code rtems_clock_get_seconds_since_epoch( rtems_interval *the_interval ); /** - * @brief Obtain Ticks Since Boot + * @brief Obtain Ticks Since Boot * - * This routine implements the rtems_clock_get_ticks_since_boot - * directive. + * This routine implements the rtems_clock_get_ticks_since_boot + * directive. * - * @return This method returns the number of ticks since boot. It cannot - * fail since RTEMS always keeps a running count of ticks since boot. + * @retval This method returns the number of ticks since boot. It cannot + * fail since RTEMS always keeps a running count of ticks since boot. */ rtems_interval rtems_clock_get_ticks_since_boot(void); /** - * @brief Obtain Ticks Per Seconds + * @brief Obtain Ticks Per Seconds * - * This routine implements the rtems_clock_get_ticks_per_second - * directive. + * This routine implements the rtems_clock_get_ticks_per_second + * directive. * - * @return This method returns the number of ticks since boot. It cannot - * fail since RTEMS is always configured to know the number of - * ticks per second. + * @retval This method returns the number of ticks since boot. It cannot + * fail since RTEMS is always configured to know the number of + * ticks per second. */ rtems_interval rtems_clock_get_ticks_per_second(void); /** - * @brief Set the Current TOD + * @brief Set the Current TOD * - * This routine implements the rtems_clock_set directive. It sets - * the current time of day to that in the time_buffer record. + * This routine implements the rtems_clock_set directive. It sets + * the current time of day to that in the time_buffer record. * - * @param[in] time_buffer points to the new TOD + * @param[in] time_buffer points to the new TOD * - * @return This method returns RTEMS_SUCCESSFUL if there was not an - * error. Otherwise, a status code is returned indicating the - * source of the error. + * @retval This method returns RTEMS_SUCCESSFUL if there was not an + * error. Otherwise, a status code is returned indicating the + * source of the error. * - * @note Activities scheduled based upon the current time of day - * may be executed immediately if the time is moved forward. + * @note Activities scheduled based upon the current time of day + * may be executed immediately if the time is moved forward. */ rtems_status_code rtems_clock_set( const rtems_time_of_day *time_buffer ); /** - * @brief Announce a Clock Tick + * @brief Announce a Clock Tick * - * This routine implements the rtems_clock_tick directive. It is invoked - * to inform RTEMS of the occurrence of a clock tick. + * This routine implements the rtems_clock_tick directive. It is invoked + * to inform RTEMS of the occurrence of a clock tick. * - * @return This directive always returns RTEMS_SUCCESSFUL. + * @retval This directive always returns RTEMS_SUCCESSFUL. * - * @note This method is typically called from an ISR and is the basis - * for all timeouts and delays. This routine only works for leap-years - * through 2099. + * @note This method is typically called from an ISR and is the basis + * for all timeouts and delays. This routine only works for leap-years + * through 2099. */ rtems_status_code rtems_clock_tick( void ); /** - * @brief Set the BSP specific Nanoseconds Extension + * @brief Set the BSP specific Nanoseconds Extension * - * Clock Manager + * Clock Manager * - * This directive sets the BSP provided nanoseconds since last tick - * extension. + * This directive sets the BSP provided nanoseconds since last tick + * extension. * - * @param[in] routine is a pointer to the extension routine + * @param[in] routine is a pointer to the extension routine * - * @return This method returns RTEMS_SUCCESSFUL if there was not an - * error. Otherwise, a status code is returned indicating the - * source of the error. + * @return This method returns RTEMS_SUCCESSFUL if there was not an + * error. Otherwise, a status code is returned indicating the + * source of the error. */ rtems_status_code rtems_clock_set_nanoseconds_extension( rtems_nanoseconds_extension_routine routine ); /** - * @brief Obtain the System Uptime - * - * This directive returns the system uptime. + * @brief Obtain the System Uptime * - * @param[in] uptime is a pointer to the time structure + * This directive returns the system uptime. * - * @return This method returns RTEMS_SUCCESSFUL if there was not an - * error. Otherwise, a status code is returned indicating the - * source of the error. If successful, the uptime will be - * filled in. + * @param[in] uptime is a pointer to the time structure * - * Clock Manager - get uptime + * @retval This method returns RTEMS_SUCCESSFUL if there was not an + * error. Otherwise, a status code is returned indicating the + * source of the error. If successful, the @a uptime will be + * filled in. */ rtems_status_code rtems_clock_get_uptime( struct timespec *uptime ); /** - * @brief Gets the System Uptime in the Struct Timeval Format + * @brief Gets the System Uptime in the Struct Timeval Format + * + * @param[out] uptime is a pointer to a struct timeval structure. + * + * @retval This methods returns the system uptime. * - * @param[out] Returns the system uptime. Pointer must not be NULL. + * @note Pointer must not be NULL. */ void rtems_clock_get_uptime_timeval( struct timeval *uptime ); /** - * @brief Returns the system uptime in seconds. + * @brief Returns the system uptime in seconds. * - * @return The system uptime in seconds. + * @retval The system uptime in seconds. */ time_t rtems_clock_get_uptime_seconds( void ); /** - * @brief TOD Validate + * @brief TOD Validate * - * This support function returns true if @a the_tod contains - * a valid time of day, and false otherwise. + * This support function returns true if @a the_tod contains + * a valid time of day, and false otherwise. * - * @param[in] the_tod is the TOD structure to validate + * @param[in] the_tod is the TOD structure to validate * - * @return This method returns true if the TOD is valid and false otherwise. + * @retval This method returns true if the TOD is valid and false otherwise. * - * @note This routine only works for leap-years through 2099. + * @note This routine only works for leap-years through 2099. */ bool _TOD_Validate( const rtems_time_of_day *the_tod ); /** - * @brief TOD to Seconds + * @brief TOD to Seconds * - * This function returns the number seconds between the epoch and @a the_tod. + * This function returns the number seconds between the epoch and @a the_tod. * - * @param[in] the_tod is the TOD structure to convert to seconds + * @param[in] the_tod is the TOD structure to convert to seconds * - * @return This method returns the number of seconds since epoch represented - * by @a the_tod + * @retval This method returns the number of seconds since epoch represented + * by @a the_tod */ Watchdog_Interval _TOD_To_seconds( const rtems_time_of_day *the_tod diff --git a/cpukit/rtems/include/rtems/rtems/config.h b/cpukit/rtems/include/rtems/rtems/config.h index e4ac509d88..3ad19ea68b 100644 --- a/cpukit/rtems/include/rtems/rtems/config.h +++ b/cpukit/rtems/include/rtems/rtems/config.h @@ -1,18 +1,21 @@ /** * @file rtems/rtems/config.h * - * @brief Records Which Define the Configuration Table + * @defgroup ClassicConfig Configuration * - * This include file contains the table of user defined configuration - * parameters specific for the RTEMS API. + * @ingroup ClassicRTEMS + * @brief Configuration Table + * + * This include file contains the table of user defined configuration + * parameters specific for the RTEMS API. */ -/* COPYRIGHT (c) 1989-2008. - * On-Line Applications Research Corporation (OAR). +/* COPYRIGHT (c) 1989-2008. + * On-Line Applications Research Corporation (OAR). * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.com/license/LICENSE. + * The license and distribution terms for this file may be + * found in the file LICENSE in this distribution or at + * http://www.rtems.com/license/LICENSE. */ #ifndef _RTEMS_RTEMS_CONFIG_H diff --git a/cpukit/rtems/include/rtems/rtems/dpmem.h b/cpukit/rtems/include/rtems/rtems/dpmem.h index 42601d5779..aea8aea6a4 100644 --- a/cpukit/rtems/include/rtems/rtems/dpmem.h +++ b/cpukit/rtems/include/rtems/rtems/dpmem.h @@ -1,27 +1,32 @@ /** * @file rtems/rtems/dpmem.h * - * This include file contains all the constants and structures associated - * with the Dual Ported Memory Manager. This manager provides a mechanism - * for converting addresses between internal and external representations - * for multiple dual-ported memory areas. + * @defgroup ClassicDPMEM Dual Ported Memory * - * Directives provided are: + * @ingroup ClassicRTEMS + * @brief Dual Ported Memory Manager * - * - create a port - * - get ID of a port - * - delete a port - * - convert external to internal address - * - convert internal to external address + * This include file contains all the constants and structures associated + * with the Dual Ported Memory Manager. This manager provides a mechanism + * for converting addresses between internal and external representations + * for multiple dual-ported memory areas. + * + * Directives provided are: + * + * - create a port + * - get ID of a port + * - delete a port + * - convert external to internal address + * - convert internal to external address * */ -/* COPYRIGHT (c) 1989-2008. - * On-Line Applications Research Corporation (OAR). +/* COPYRIGHT (c) 1989-2008. + * On-Line Applications Research Corporation (OAR). * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.com/license/LICENSE. + * The license and distribution terms for this file may be + * found in the file LICENSE in this distribution or at + * http://www.rtems.com/license/LICENSE. */ #ifndef _RTEMS_RTEMS_DPMEM_H @@ -85,24 +90,24 @@ RTEMS_DPMEM_EXTERN Objects_Information _Dual_ported_memory_Information; void _Dual_ported_memory_Manager_initialization(void); /** - * @brief Creates a port into a dual-ported memory area. - * - * This routine implements the rtems_port_create directive. The port - * will have the name @a name. The port maps onto an area of dual ported - * memory of length bytes which has internal_start and external_start - * as the internal and external starting addresses, respectively. - * It returns the id of the created port in ID. - * - * @param[in] name is the user defined port name - * @param[in] internal_start is the internal start address of port - * @param[in] external_start is the external start address of port - * @param[in] length is the physical length in bytes - * @param[out] id is the address of port id to set - * - * @return This method returns RTEMS_SUCCESSFUL if there was not an - * error. Otherwise, a status code is returned indicating the - * source of the error. If successful, the id will - * be filled in with the port id. + * @brief Creates a port into a dual-ported memory area. + * + * This routine implements the rtems_port_create directive. The port + * will have the name @a name. The port maps onto an area of dual ported + * memory of length bytes which has internal_start and external_start + * as the internal and external starting addresses, respectively. + * It returns the id of the created port in ID. + * + * @param[in] name is the user defined port name + * @param[in] internal_start is the internal start address of port + * @param[in] external_start is the external start address of port + * @param[in] length is the physical length in bytes + * @param[out] id is the address of port id to set + * + * @retval This method returns RTEMS_SUCCESSFUL if there was not an + * error. Otherwise, a status code is returned indicating the + * source of the error. If successful, the id will + * be filled in with the port id. */ rtems_status_code rtems_port_create( rtems_name name, @@ -113,16 +118,16 @@ rtems_status_code rtems_port_create( ); /** - * @brief RTEMS Port Name to Id - * - * This routine implements the rtems_port_ident directive. This directive - * returns the port ID associated with name. If more than one port is - * named name, then the port to which the ID belongs is arbitrary. - * - * @param[in] name is the user defined port name - * @param[out] id is the pointer to port id - * - * @return RTEMS_SUCCESSFUL if successful or error code if unsuccessful + * @brief RTEMS Port Name to Id + * + * This routine implements the rtems_port_ident directive. This directive + * returns the port ID associated with name. If more than one port is + * named name, then the port to which the ID belongs is arbitrary. + * + * @param[in] name is the user defined port name + * @param[out] id is the pointer to port id + * + * @retval RTEMS_SUCCESSFUL if successful or error code if unsuccessful */ rtems_status_code rtems_port_ident( rtems_name name, @@ -130,35 +135,35 @@ rtems_status_code rtems_port_ident( ); /** - * @brief RTEMS Delete Port - * - * This routine implements the rtems_port_delete directive. It deletes - * the port associated with ID. - * - * @param[in] id is the dual-ported memory area id - * - * @return This method returns RTEMS_SUCCESSFUL if there was not an - * error. Otherwise, a status code is returned indicating the - * source of the error. + * @brief RTEMS Delete Port + * + * This routine implements the rtems_port_delete directive. It deletes + * the port associated with ID. + * + * @param[in] id is the dual-ported memory area id + * + * @retval This method returns RTEMS_SUCCESSFUL if there was not an + * error. Otherwise, a status code is returned indicating the + * source of the error. */ rtems_status_code rtems_port_delete( rtems_id id ); /** - * @brief RTEMS Port External to Internal - * - * This routine implements the rtems_port_external_to_internal directive. - * It returns the internal port address which maps to the provided - * external port address for the specified port ID.If the given external - * address is an invalid dual-ported address, then the internal address is - * set to the given external address. - * - * @param[in] id is the id of dp memory object - * @param[in] external is the external address - * @param[out] internal is the pointer of internal address to set - * - * @return RTEMS_SUCCESSFUL + * @brief RTEMS Port External to Internal + * + * This routine implements the rtems_port_external_to_internal directive. + * It returns the internal port address which maps to the provided + * external port address for the specified port ID. If the given external + * address is an invalid dual-ported address, then the internal address is + * set to the given external address. + * + * @param[in] id is the id of dp memory object + * @param[in] external is the external address + * @param[out] internal is the pointer of internal address to set + * + * @retval RTEMS_SUCCESSFUL */ rtems_status_code rtems_port_external_to_internal( rtems_id id, @@ -167,20 +172,20 @@ rtems_status_code rtems_port_external_to_internal( ); /** - * @brief RTEMS Port Internal to External - * - * This routine implements the Port_internal_to_external directive. - * It returns the external port address which maps to the provided - * internal port address for the specified port ID. If the given - * internal address is an invalid dual-ported address, then the - * external address is set to the given internal address. - * - * @param[in] id is the id of dual-ported memory object - * @param[in] internal is the internal address to set - * @param[in] external is the pointer to external address - * - * @return RTEMS_SUCCESSFUL and the external will be filled in - * with the external addresses + * @brief RTEMS Port Internal to External + * + * This routine implements the Port_internal_to_external directive. + * It returns the external port address which maps to the provided + * internal port address for the specified port ID. If the given + * internal address is an invalid dual-ported address, then the + * external address is set to the given internal address. + * + * @param[in] id is the id of dual-ported memory object + * @param[in] internal is the internal address to set + * @param[in] external is the pointer to external address + * + * @retval RTEMS_SUCCESSFUL and the external will be filled in + * with the external addresses */ rtems_status_code rtems_port_internal_to_external( rtems_id id, diff --git a/cpukit/rtems/include/rtems/rtems/event.h b/cpukit/rtems/include/rtems/rtems/event.h index 6c265c3f40..6a27c91aee 100644 --- a/cpukit/rtems/include/rtems/rtems/event.h +++ b/cpukit/rtems/include/rtems/rtems/event.h @@ -1,25 +1,28 @@ /** * @file rtems/rtems/event.h * - * @brief Information Related to the Event Manager + * @defgroup ClassicEvent Events * - * This include file contains the information pertaining to the Event - * Manager. This manager provides a high performance method of communication - * and synchronization. + * @ingroup ClassicRTEMS + * @brief Information Related to Event Manager * - * Directives provided are: + * This include file contains the information pertaining to the Event + * Manager. This manager provides a high performance method of communication + * and synchronization. * - * - send an event set to a task - * - receive event condition + * Directives provided are: + * + * - send an event set to a task + * - receive event condition * */ -/* COPYRIGHT (c) 1989-2008. - * On-Line Applications Research Corporation (OAR). +/* COPYRIGHT (c) 1989-2008. + * On-Line Applications Research Corporation (OAR). * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.com/license/LICENSE. + * The license and distribution terms for this file may be + * found in the file LICENSE in this distribution or at + * http://www.rtems.com/license/LICENSE. */ #ifndef _RTEMS_RTEMS_EVENT_H @@ -100,38 +103,38 @@ extern "C" { */ /** - * @brief Sends an Event Set to the Target Task - * - * This directive sends an event set @a event_in to the task specified by - * @a id. - * - * Based upon the state of the target task, one of the following situations - * applies. The target task is - * - blocked waiting for events. - * If the waiting task's input event condition is - * - satisfied, then the task is made ready for execution. - * - not satisfied, then the event set is posted but left pending and the - * task remains blocked. - * - not waiting for events. - * - The event set is posted and left pending. - * - * Identical events sent to a task are not queued. In other words, the second, - * and subsequent, posting of an event to a task before it can perform an - * rtems_event_receive() has no effect. - * - * The calling task will be preempted if it has preemption enabled and a - * higher priority task is unblocked as the result of this directive. - * - * Sending an event set to a global task which does not reside on the local - * node will generate a request telling the remote node to send the event set - * to the appropriate task. - * - * @param[in] id Identifier of the target task. Specifying @ref RTEMS_SELF - * results in the event set being sent to the calling task. - * @param[in] event_in Event set sent to the target task. - * - * @retval RTEMS_SUCCESSFUL Successful operation. - * @retval RTEMS_INVALID_ID Invalid task identifier. + * @brief Sends an Event Set to the Target Task + * + * This directive sends an event set @a event_in to the task specified by + * @a id. + * + * Based upon the state of the target task, one of the following situations + * applies. The target task is + * - blocked waiting for events. + * If the waiting task's input event condition is + * - satisfied, then the task is made ready for execution. + * - not satisfied, then the event set is posted but left pending and the + * task remains blocked. + * - not waiting for events. + * - The event set is posted and left pending. + * + * Identical events sent to a task are not queued. In other words, the second, + * and subsequent, posting of an event to a task before it can perform an + * rtems_event_receive() has no effect. + * + * The calling task will be preempted if it has preemption enabled and a + * higher priority task is unblocked as the result of this directive. + * + * Sending an event set to a global task which does not reside on the local + * node will generate a request telling the remote node to send the event set + * to the appropriate task. + * + * @param[in] id Identifier of the target task. Specifying @ref RTEMS_SELF + * results in the event set being sent to the calling task. + * @param[in] event_in Event set sent to the target task. + * + * @retval RTEMS_SUCCESSFUL Successful operation. + * @retval RTEMS_INVALID_ID Invalid task identifier. */ rtems_status_code rtems_event_send ( rtems_id id, @@ -139,65 +142,65 @@ rtems_status_code rtems_event_send ( ); /** - * @brief Receives pending events. - * - * This directive attempts to receive the event condition specified in - * @a event_in. If @a event_in is set to @ref RTEMS_PENDING_EVENTS, then the - * current pending events are returned in @a event_out and left pending. The - * @aref RTEMS_WAIT and @aref RTEMS_NO_WAIT options in the @a option_set - * parameter are used to specify whether or not the task is willing to wait - * for the event condition to be satisfied. The @ref RTEMS_EVENT_ANY and @ref - * RTEMS_EVENT_ALL are used in the @a option_set parameter to specify whether - * at least a single event or the complete event set is necessary to satisfy - * the event condition. The @a event_out parameter is returned to the calling - * task with the value that corresponds to the events in @a event_in that were - * satisfied. - * - * A task can determine the pending event set by using a value of - * @ref RTEMS_PENDING_EVENTS for the input event set @a event_in. The pending - * events are returned to the calling task but the event set is left - * unaltered. - * - * A task can receive all of the currently pending events by using the a value - * of @ref RTEMS_ALL_EVENTS for the input event set @a event_in and - * @ref RTEMS_NO_WAIT | @ref RTEMS_EVENT_ANY for the option set @a option_set. - * The pending events are returned to the calling task and the event set is - * cleared. If no events are pending then the @ref RTEMS_UNSATISFIED status - * code will be returned. - * - * If pending events satisfy the event condition, then @a event_out is set to - * the satisfied events and the pending events in the event condition are - * cleared. If the event condition is not satisfied and @ref RTEMS_NO_WAIT is - * specified, then @a event_out is set to the currently satisfied events. If - * the calling task chooses to wait, then it will block waiting for the event - * condition. - * - * If the calling task must wait for the event condition to be satisfied, then - * the timeout parameter is used to specify the maximum interval to wait. If - * it is set to @ref RTEMS_NO_TIMEOUT, then the calling task will wait forever. - * - * This directive only affects the events specified in @a event_in. Any - * pending events that do not correspond to any of the events specified in - * @a event_in will be left pending. - * - * A clock tick is required to support the wait with time out functionality of - * this directive. - * - * @param[in] event_in Set of requested events (input events). - * @param[in] option_set Use a bitwise or of the following options - * - @ref RTEMS_WAIT - task will wait for event (default), - * - @ref RTEMS_NO_WAIT - task should not wait, - * - @ref RTEMS_EVENT_ALL - return after all events (default), and - * - @ref RTEMS_EVENT_ANY - return after any events. - * @param[in] ticks Time out in ticks. Use @ref RTEMS_NO_TIMEOUT to wait - * without a time out (potentially forever). - * @param[out] event_out Set of received events (output events). - * - * @retval RTEMS_SUCCESSFUL Successful operation. - * @retval RTEMS_UNSATISFIED Input events not satisfied (only with the - * @ref RTEMS_NO_WAIT option). - * @retval RTEMS_INVALID_ADDRESS The @a event_out pointer is @c NULL. - * @retval RTEMS_TIMEOUT Timed out waiting for events. + * @brief Receives pending events. + * + * This directive attempts to receive the event condition specified in + * @a event_in. If @a event_in is set to @ref RTEMS_PENDING_EVENTS, then the + * current pending events are returned in @a event_out and left pending. The + * @aref RTEMS_WAIT and @aref RTEMS_NO_WAIT options in the @a option_set + * parameter are used to specify whether or not the task is willing to wait + * for the event condition to be satisfied. The @ref RTEMS_EVENT_ANY and @ref + * RTEMS_EVENT_ALL are used in the @a option_set parameter to specify whether + * at least a single event or the complete event set is necessary to satisfy + * the event condition. The @a event_out parameter is returned to the calling + * task with the value that corresponds to the events in @a event_in that were + * satisfied. + * + * A task can determine the pending event set by using a value of + * @ref RTEMS_PENDING_EVENTS for the input event set @a event_in. The pending + * events are returned to the calling task but the event set is left + * unaltered. + * + * A task can receive all of the currently pending events by using the a value + * of @ref RTEMS_ALL_EVENTS for the input event set @a event_in and + * @ref RTEMS_NO_WAIT | @ref RTEMS_EVENT_ANY for the option set @a option_set. + * The pending events are returned to the calling task and the event set is + * cleared. If no events are pending then the @ref RTEMS_UNSATISFIED status + * code will be returned. + * + * If pending events satisfy the event condition, then @a event_out is set to + * the satisfied events and the pending events in the event condition are + * cleared. If the event condition is not satisfied and @ref RTEMS_NO_WAIT is + * specified, then @a event_out is set to the currently satisfied events. If + * the calling task chooses to wait, then it will block waiting for the event + * condition. + * + * If the calling task must wait for the event condition to be satisfied, then + * the timeout parameter is used to specify the maximum interval to wait. If + * it is set to @ref RTEMS_NO_TIMEOUT, then the calling task will wait forever. + * + * This directive only affects the events specified in @a event_in. Any + * pending events that do not correspond to any of the events specified in + * @a event_in will be left pending. + * + * A clock tick is required to support the wait with time out functionality of + * this directive. + * + * @param[in] event_in Set of requested events (input events). + * @param[in] option_set Use a bitwise or of the following options + * - @ref RTEMS_WAIT - task will wait for event (default), + * - @ref RTEMS_NO_WAIT - task should not wait, + * - @ref RTEMS_EVENT_ALL - return after all events (default), and + * - @ref RTEMS_EVENT_ANY - return after any events. + * @param[in] ticks Time out in ticks. Use @ref RTEMS_NO_TIMEOUT to wait + * without a time out (potentially forever). + * @param[out] event_out Set of received events (output events). + * + * @retval RTEMS_SUCCESSFUL Successful operation. + * @retval RTEMS_UNSATISFIED Input events not satisfied (only with the + * @ref RTEMS_NO_WAIT option). + * @retval RTEMS_INVALID_ADDRESS The @a event_out pointer is @c NULL. + * @retval RTEMS_TIMEOUT Timed out waiting for events. */ rtems_status_code rtems_event_receive ( rtems_event_set event_in, @@ -220,9 +223,8 @@ rtems_status_code rtems_event_receive ( * The event @ref RTEMS_EVENT_SYSTEM_TRANSIENT is used for transient usage. * See also @ref ClassicEventTransient. This event may be used by every entity * that fulfils its usage pattern. - * - * @{ */ +/**@{**/ /** * @brief Reserved system event for network SBWAIT usage. @@ -364,9 +366,8 @@ rtems_status_code rtems_event_system_receive( * assert(req.work_done); * } * @endcode - * - * @{ */ +/**@{**/ /** * @brief See rtems_event_system_send(). diff --git a/cpukit/rtems/include/rtems/rtems/eventmp.h b/cpukit/rtems/include/rtems/rtems/eventmp.h index a54f79cffe..45f60b67b7 100644 --- a/cpukit/rtems/include/rtems/rtems/eventmp.h +++ b/cpukit/rtems/include/rtems/rtems/eventmp.h @@ -1,16 +1,21 @@ /** * @file rtems/rtems/eventmp.h * - * This include file contains all the constants and structures associated - * with the Multiprocessing Support in the Event Manager. + * @defgroup ClassicEventMP Event MP Support + * + * @ingroup ClassicRTEMS + * @brief Event Manager MP Support + * + * This include file contains all the constants and structures associated + * with the Multiprocessing Support in the Event Manager. */ -/* COPYRIGHT (c) 1989-2008. - * On-Line Applications Research Corporation (OAR). +/* COPYRIGHT (c) 1989-2008. + * On-Line Applications Research Corporation (OAR). * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.com/license/LICENSE. + * The license and distribution terms for this file may be + * found in the file LICENSE in this distribution or at + * http://www.rtems.com/license/LICENSE. */ #ifndef _RTEMS_RTEMS_EVENTMP_H diff --git a/cpukit/rtems/include/rtems/rtems/eventset.h b/cpukit/rtems/include/rtems/rtems/eventset.h index 632e217c79..4d2bff8a89 100644 --- a/cpukit/rtems/include/rtems/rtems/eventset.h +++ b/cpukit/rtems/include/rtems/rtems/eventset.h @@ -1,19 +1,22 @@ /** * @file rtems/rtems/eventset.h * - * @brief Information Related to the Event Sets Handler + * @defgroup ClassicEventSet Event Set * - * This include file contains the information pertaining to the - * Event Sets Handler. This handler provides methods for the manipulation - * of event sets which will be sent and received by tasks. + * @ingroup ClassicRTEMS + * @brief Event Sets Handler + * + * This include file contains the information pertaining to the + * Event Sets Handler. This handler provides methods for the manipulation + * of event sets which will be sent and received by tasks. */ -/* COPYRIGHT (c) 1989-2008. - * On-Line Applications Research Corporation (OAR). +/* COPYRIGHT (c) 1989-2008. + * On-Line Applications Research Corporation (OAR). * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.com/license/LICENSE. + * The license and distribution terms for this file may be + * found in the file LICENSE in this distribution or at + * http://www.rtems.com/license/LICENSE. */ #ifndef _RTEMS_RTEMS_EVENTSET_H diff --git a/cpukit/rtems/include/rtems/rtems/intr.h b/cpukit/rtems/include/rtems/rtems/intr.h index 66684fe327..ea6dc6b64a 100644 --- a/cpukit/rtems/include/rtems/rtems/intr.h +++ b/cpukit/rtems/include/rtems/rtems/intr.h @@ -1,18 +1,21 @@ /** * @file rtems/rtems/intr.h * - * @brief Header file for the Interrupt Manager. + * @defgroup ClassicINTR Interrupts * - * This include file contains all the constants and structures associated with - * the Interrupt Manager. + * @ingroup ClassicRTEMS + * @brief Header file for Interrupt Manager + * + * This include file contains all the constants and structures associated with + * the Interrupt Manager. */ -/* COPYRIGHT (c) 1989-2008. - * On-Line Applications Research Corporation (OAR). +/* COPYRIGHT (c) 1989-2008. + * On-Line Applications Research Corporation (OAR). * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.com/license/LICENSE. + * The license and distribution terms for this file may be + * found in the file LICENSE in this distribution or at + * http://www.rtems.com/license/LICENSE. */ #ifndef _RTEMS_RTEMS_INTR_H @@ -63,17 +66,17 @@ typedef rtems_isr ( *rtems_isr_entry )( ); /** - * @brief RTEMS Interrupt Catch + * @brief RTEMS Interrupt Catch * - * This directive installs @a new_isr_handler as the RTEMS interrupt service - * routine for the interrupt vector with number @a vector. The previous RTEMS - * interrupt service routine is returned in @a old_isr_handler. + * This directive installs @a new_isr_handler as the RTEMS interrupt service + * routine for the interrupt vector with number @a vector. The previous RTEMS + * interrupt service routine is returned in @a old_isr_handler. * - * @param[in] new_isr_handler is the address of interrupt service routine - * @param[in] vector is the interrupt vector number - * @param[in] old_isr_handler address at which to store previous ISR address + * @param[in] new_isr_handler is the address of interrupt service routine + * @param[in] vector is the interrupt vector number + * @param[in] old_isr_handler address at which to store previous ISR address * - * @return RTEMS_SUCCESSFUL and *old_isr_handler filled with previous ISR + * @retval RTEMS_SUCCESSFUL and *old_isr_handler filled with previous ISR * address */ rtems_status_code rtems_interrupt_catch( diff --git a/cpukit/rtems/include/rtems/rtems/message.h b/cpukit/rtems/include/rtems/rtems/message.h index 9ad1e9b9ef..e8bbee8cc4 100644 --- a/cpukit/rtems/include/rtems/rtems/message.h +++ b/cpukit/rtems/include/rtems/rtems/message.h @@ -1,30 +1,33 @@ /** * @file rtems/rtems/message.h * - * @brief Constants and Structures Associated with the Message Queue Manager - * - * This include file contains all the constants and structures associated - * with the Message Queue Manager. This manager provides a mechanism for - * communication and synchronization between tasks using messages. - * - * Directives provided are: - * - * - create a queue - * - get ID of a queue - * - delete a queue - * - put a message at the rear of a queue - * - put a message at the front of a queue - * - broadcast N messages to a queue - * - receive message from a queue - * - flush all messages on a queue + * @defgroup ClassicMessageQueue Message Queues + * + * @ingroup ClassicRTEMS + * @brief Message Queue Manager + * + * This include file contains all the constants and structures associated + * with the Message Queue Manager. This manager provides a mechanism for + * communication and synchronization between tasks using messages. + * + * Directives provided are: + * + * - create a queue + * - get ID of a queue + * - delete a queue + * - put a message at the rear of a queue + * - put a message at the front of a queue + * - broadcast N messages to a queue + * - receive message from a queue + * - flush all messages on a queue */ -/* COPYRIGHT (c) 1989-2008. - * On-Line Applications Research Corporation (OAR). +/* COPYRIGHT (c) 1989-2008. + * On-Line Applications Research Corporation (OAR). * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.com/license/LICENSE. + * The license and distribution terms for this file may be + * found in the file LICENSE in this distribution or at + * http://www.rtems.com/license/LICENSE. */ #ifndef _RTEMS_RTEMS_MESSAGE_H @@ -106,25 +109,25 @@ RTEMS_MESSAGE_EXTERN Objects_Information _Message_queue_Information; void _Message_queue_Manager_initialization(void); /** - * @brief RTEMS Create Message Queue - * - * This routine implements the rtems_message_queue_create directive. The - * message queue will have the @a name. If the @a attribute_set indicates - * that the message queue is to be limited in the number of messages - * that can be outstanding, then @a count indicates the maximum number of - * messages that will be held. It returns the id of the created - * message queue in @a id. - * - * @param[in] name is the user defined queue name - * @param[in] count is the maximum message and reserved buffer count - * @param[in] max_message_size is the maximum size of each message - * @param[in] attribute_set is the process method - * @param[in] id is the pointer to queue - * - * @return This method returns RTEMS_SUCCESSFUL if there was not an - * error. Otherwise, a status code is returned indicating the - * source of the error. If successful, the @a id will - * be filled in with the queue id. + * @brief RTEMS Create Message Queue + * + * This routine implements the rtems_message_queue_create directive. The + * message queue will have the @a name. If the @a attribute_set indicates + * that the message queue is to be limited in the number of messages + * that can be outstanding, then @a count indicates the maximum number of + * messages that will be held. It returns the id of the created + * message queue in @a id. + * + * @param[in] name is the user defined queue name + * @param[in] count is the maximum message and reserved buffer count + * @param[in] max_message_size is the maximum size of each message + * @param[in] attribute_set is the process method + * @param[in] id is the pointer to queue + * + * @retval This method returns RTEMS_SUCCESSFUL if there was not an + * error. Otherwise, a status code is returned indicating the + * source of the error. If successful, the @a id will + * be filled in with the queue id. */ rtems_status_code rtems_message_queue_create( rtems_name name, @@ -135,22 +138,22 @@ rtems_status_code rtems_message_queue_create( ); /** - * @brief RTEMS Message Queue Name to Id - * - * This routine implements the rtems_message_queue_ident directive. - * This directive returns the message queue ID associated with NAME. - * If more than one message queue is named name, then the message - * queue to which the ID belongs is arbitrary. node indicates the - * extent of the search for the ID of the message queue named name. - * The search can be limited to a particular node or allowed to - * encompass all nodes. - * - * @param[in] name is the user defined message queue name - * @param[in] node is the node(s) to be searched - * @param[in] id is the pointer to message queue id - * - * @return RTEMS_SUCCESSFUL if successful or error code if unsuccessful and - * *id filled with the message queue id + * @brief RTEMS Message Queue Name to Id + * + * This routine implements the rtems_message_queue_ident directive. + * This directive returns the message queue ID associated with NAME. + * If more than one message queue is named name, then the message + * queue to which the ID belongs is arbitrary. node indicates the + * extent of the search for the ID of the message queue named name. + * The search can be limited to a particular node or allowed to + * encompass all nodes. + * + * @param[in] name is the user defined message queue name + * @param[in] node is the node(s) to be searched + * @param[in] id is the pointer to message queue id + * + * @retval RTEMS_SUCCESSFUL if successful or error code if unsuccessful and + * *id filled with the message queue id */ rtems_status_code rtems_message_queue_ident( rtems_name name, @@ -159,14 +162,14 @@ rtems_status_code rtems_message_queue_ident( ); /** - * @brief RTEMS Delete Message Queue + * @brief RTEMS Delete Message Queue * - * This routine implements the rtems_message_queue_delete directive. The - * message queue indicated by ID is deleted. + * This routine implements the rtems_message_queue_delete directive. The + * message queue indicated by ID is deleted. * - * @param[in] id is the queue id + * @param[in] id is the queue id * - * @return RTEMS_SUCCESSFUL if successful or error code if unsuccessful + * @retval RTEMS_SUCCESSFUL if successful or error code if unsuccessful */ rtems_status_code rtems_message_queue_delete( rtems_id id @@ -194,19 +197,19 @@ rtems_status_code rtems_message_queue_send( ); /** - * @brief RTEMS Urgent Message Queue + * @brief RTEMS Urgent Message Queue * - * This routine implements the rtems_message_queue_urgent directive. - * This directive has the same behavior as rtems_message_queue_send - * except that if no tasks are waiting, the message buffer will - * be placed at the FRONT of the chain of pending messages rather - * than at the REAR. + * This routine implements the rtems_message_queue_urgent directive. + * This directive has the same behavior as rtems_message_queue_send + * except that if no tasks are waiting, the message buffer will + * be placed at the FRONT of the chain of pending messages rather + * than at the REAR. * - * @param[in] id is the pointer to message queue - * @param[in] buffer is the pointer to message buffer - * @param[in] size is the size of message to send urgently + * @param[in] id is the pointer to message queue + * @param[in] buffer is the pointer to message buffer + * @param[in] size is the size of message to send urgently * - * @return RTEMS_SUCCESSFUL if successful or error code if unsuccessful + * @retval RTEMS_SUCCESSFUL if successful or error code if unsuccessful */ rtems_status_code rtems_message_queue_urgent( rtems_id id, @@ -215,20 +218,20 @@ rtems_status_code rtems_message_queue_urgent( ); /** - * @brief RTEMS Broadcast Message Queue + * @brief RTEMS Broadcast Message Queue * - * This routine implements the rtems_message_queue_broadcast directive. - * This directive sends the message buffer to all of the tasks blocked - * waiting for a message on the message queue indicated by ID. - * If no tasks are waiting, then the message buffer will not be queued. + * This routine implements the rtems_message_queue_broadcast directive. + * This directive sends the message buffer to all of the tasks blocked + * waiting for a message on the message queue indicated by ID. + * If no tasks are waiting, then the message buffer will not be queued. * - * @param[in] id is the pointer to message queue - * @param[in] buffer is the pointer to message buffer - * @param[in] size is the size of message to broadcast - * @param[in] count pointer to area to store number of threads made ready + * @param[in] id is the pointer to message queue + * @param[in] buffer is the pointer to message buffer + * @param[in] size is the size of message to broadcast + * @param[in] count pointer to area to store number of threads made ready * - * @return RTEMS_SUCCESSFUL if successful or error code if unsuccessful and - * *count filled in with number of threads made ready + * @retval RTEMS_SUCCESSFUL if successful or error code if unsuccessful and + * *count filled in with number of threads made ready */ rtems_status_code rtems_message_queue_broadcast( rtems_id id, @@ -238,25 +241,25 @@ rtems_status_code rtems_message_queue_broadcast( ); /** - * @brief RTEMS Message Queue Receive - * - * This routine implements the rtems_message_queue_receive directive. - * This directive is invoked when the calling task wishes to receive - * a message from the message queue indicated by ID. The received - * message is to be placed in buffer. If no messages are outstanding - * and the option_set indicates that the task is willing to block, - * then the task will be blocked until a message arrives or until, - * optionally, timeout clock ticks have passed. - * - * @param[in] id is the queue id - * @param[in] buffer is the pointer to message buffer - * @param[in] size is the size of message receive - * @param[in] option_set is the options on receive - * @param[in] timeout is the number of ticks to wait - * - * @return This method returns RTEMS_SUCCESSFUL if there was not an - * error. Otherwise, a status code is returned indicating the - * source of the error. + * @brief RTEMS Message Queue Receive + * + * This routine implements the rtems_message_queue_receive directive. + * This directive is invoked when the calling task wishes to receive + * a message from the message queue indicated by ID. The received + * message is to be placed in buffer. If no messages are outstanding + * and the option_set indicates that the task is willing to block, + * then the task will be blocked until a message arrives or until, + * optionally, timeout clock ticks have passed. + * + * @param[in] id is the queue id + * @param[in] buffer is the pointer to message buffer + * @param[in] size is the size of message receive + * @param[in] option_set is the options on receive + * @param[in] timeout is the number of ticks to wait + * + * @retval This method returns RTEMS_SUCCESSFUL if there was not an + * error. Otherwise, a status code is returned indicating the + * source of the error. */ rtems_status_code rtems_message_queue_receive( rtems_id id, @@ -315,24 +318,24 @@ rtems_status_code _Message_queue_Submit( ); /** - * @brief Message Queue Allocate + * @brief Message Queue Allocate * - * This function allocates a message queue control block from - * the inactive chain of free message queue control blocks. + * This function allocates a message queue control block from + * the inactive chain of free message queue control blocks. * - * @return the_message_queue filled in if successful, NULL otherwise + * @retval the_message_queue filled in if successful, NULL otherwise */ Message_queue_Control *_Message_queue_Allocate (void); /** - * @brief Message queue Translate Core Message Queue Return Code + * @brief Message queue Translate Core Message Queue Return Code * - * This function returns a RTEMS status code based on - * @a the_message_queue_status. + * This function returns a RTEMS status code based on + * @a the_message_queue_status. * - * @param[in] the_message_queue_status is the status code to translate + * @param[in] the_message_queue_status is the status code to translate * - * @return translated RTEMS status code + * @retval translated RTEMS status code */ rtems_status_code _Message_queue_Translate_core_message_queue_return_code ( uint32_t the_message_queue_status diff --git a/cpukit/rtems/include/rtems/rtems/modes.h b/cpukit/rtems/include/rtems/rtems/modes.h index 6ac7d15773..9a4bf73f91 100644 --- a/cpukit/rtems/include/rtems/rtems/modes.h +++ b/cpukit/rtems/include/rtems/rtems/modes.h @@ -1,18 +1,21 @@ /** * @file rtems/rtems/modes.h * - * @brief Constants and Structures Associated with the RTEMS thread and RTEMS_ASR modes + * @defgroup ClassicModes Modes * - * This include file contains all constants and structures associated - * with the RTEMS thread and RTEMS_ASR modes. + * @ingroup ClassicRTEMS + * @brief RTEMS thread and RTEMS_ASR modes + * + * This include file contains all constants and structures associated + * with the RTEMS thread and RTEMS_ASR modes. */ -/* COPYRIGHT (c) 1989-2008. - * On-Line Applications Research Corporation (OAR). +/* COPYRIGHT (c) 1989-2008. + * On-Line Applications Research Corporation (OAR). * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.com/license/LICENSE. + * The license and distribution terms for this file may be + * found in the file LICENSE in this distribution or at + * http://www.rtems.com/license/LICENSE. */ #ifndef _RTEMS_RTEMS_MODES_H @@ -84,14 +87,14 @@ typedef uint32_t Modes_Control; #define RTEMS_NO_ASR 0x00000400 /** - * @brief RTEMS_INTERRUPT_LEVEL + * @brief RTEMS_INTERRUPT_LEVEL * - * This function returns the processor dependent interrupt - * level which corresponds to the requested interrupt level. + * This function returns the processor dependent interrupt + * level which corresponds to the requested interrupt level. * - * @note RTEMS supports 256 interrupt levels using the least - * significant eight bits of MODES.CONTROL. On any - * particular CPU, fewer than 256 levels may be supported. + * @note RTEMS supports 256 interrupt levels using the least + * significant eight bits of MODES.CONTROL. On any + * particular CPU, fewer than 256 levels may be supported. */ #define RTEMS_INTERRUPT_LEVEL( _mode_set ) \ ( (_mode_set) & RTEMS_INTERRUPT_MASK ) @@ -104,15 +107,15 @@ typedef uint32_t Modes_Control; extern const uint32_t rtems_interrupt_mask; /** - * @brief Body for RTEMS_INTERRUPT_LEVEL Macro + * @brief Body for RTEMS_INTERRUPT_LEVEL Macro * - * @param[in] level is the desired interrupt level + * @param[in] level is the desired interrupt level * - * @return This methods returns a mode with the desired interrupt - * @a level in the proper bitfield location. + * @retval This methods returns a mode with the desired interrupt + * @a level in the proper bitfield location. * - * @note This variable is used by bindings from languages other than - * C and C++. + * @note This variable is used by bindings from languages other than + * C and C++. */ Modes_Control rtems_interrupt_level_body( uint32_t level diff --git a/cpukit/rtems/include/rtems/rtems/mp.h b/cpukit/rtems/include/rtems/rtems/mp.h index f7b5f20c62..fc59e74493 100644 --- a/cpukit/rtems/include/rtems/rtems/mp.h +++ b/cpukit/rtems/include/rtems/rtems/mp.h @@ -1,16 +1,21 @@ /** * @file rtems/rtems/mp.h * - * This include file contains all the constants and structures associated - * with the Multiprocessing Manager. + * @defgroup ClassicMP Multiprocessing + * + * @ingroup ClassicRTEMS + * @brief Multiprocessing Manager + * + * This include file contains all the constants and structures associated + * with the Multiprocessing Manager. */ -/* COPYRIGHT (c) 1989-2008. - * On-Line Applications Research Corporation (OAR). +/* COPYRIGHT (c) 1989-2008. + * On-Line Applications Research Corporation (OAR). * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.com/license/LICENSE. + * The license and distribution terms for this file may be + * found in the file LICENSE in this distribution or at + * http://www.rtems.com/license/LICENSE. */ #ifndef _RTEMS_RTEMS_MP_H diff --git a/cpukit/rtems/include/rtems/rtems/msgmp.h b/cpukit/rtems/include/rtems/rtems/msgmp.h index f512eaeda7..f01a687ae3 100644 --- a/cpukit/rtems/include/rtems/rtems/msgmp.h +++ b/cpukit/rtems/include/rtems/rtems/msgmp.h @@ -1,16 +1,18 @@ /** * @file rtems/rtems/msgmp.h * - * This include file contains all the constants and structures associated - * with the Multiprocessing Support in the Message Manager. + * @brief Message Manager MP Support + * + * This include file contains all the constants and structures associated + * with the Multiprocessing Support in the Message Manager. */ -/* COPYRIGHT (c) 1989-2008. - * On-Line Applications Research Corporation (OAR). +/* COPYRIGHT (c) 1989-2008. + * On-Line Applications Research Corporation (OAR). * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.com/license/LICENSE. + * The license and distribution terms for this file may be + * found in the file LICENSE in this distribution or at + * http://www.rtems.com/license/LICENSE. */ #ifndef _RTEMS_RTEMS_MSGMP_H @@ -34,7 +36,7 @@ extern "C" { * * This encapsulates functionality which XXX */ -/**{*/ +/*{*/ /** * The following enumerated type defines the list of @@ -119,10 +121,10 @@ void _Message_queue_MP_Send_response_packet ( /** * - @brief * _Message_queue_MP_Process_packet + * @brief _Message_queue_MP_Process_packet * - * This routine performs the actions specific to this package for - * the request from another node. + * This routine performs the actions specific to this package for + * the request from another node. */ void _Message_queue_MP_Process_packet ( rtems_packet_prefix *the_packet_prefix diff --git a/cpukit/rtems/include/rtems/rtems/object.h b/cpukit/rtems/include/rtems/rtems/object.h index 7baa80c652..bd80cc00da 100644 --- a/cpukit/rtems/include/rtems/rtems/object.h +++ b/cpukit/rtems/include/rtems/rtems/object.h @@ -1,15 +1,20 @@ /** * @file rtems/rtems/object.h * + * @defgroup ClassicClassInfo Object Class Information + * + * @ingroup ClassicRTEMS + * @brief Classic API interfaces to Object Services + * * This include file defines Classic API interfaces to Object Services. */ -/* COPYRIGHT (c) 1989-2011. - * On-Line Applications Research Corporation (OAR). +/* COPYRIGHT (c) 1989-2011. + * On-Line Applications Research Corporation (OAR). * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.com/license/LICENSE. + * The license and distribution terms for this file may be + * found in the file LICENSE in this distribution or at + * http://www.rtems.com/license/LICENSE. */ #ifndef _RTEMS_RTEMS_OBJECT_H @@ -51,59 +56,59 @@ typedef struct { } rtems_object_api_class_information; /** - * @brief Build Object Id + * @brief Build Object Id * - * This function returns an object id composed of the - * specified @a api, @a class, @a node, - * and @a index. + * This function returns an object id composed of the + * specified @a api, @a class, @a node, + * and @a index. * - * @param[in] _api indicates the api to use for the Id - * @param[in] _class indicates the class to use for the Id - * @param[in] _node indicates the node to use for the Id - * @param[in] _index indicates the index to use for the Id + * @param[in] _api indicates the api to use for the Id + * @param[in] _class indicates the class to use for the Id + * @param[in] _node indicates the node to use for the Id + * @param[in] _index indicates the index to use for the Id * - * @return This method returns an object Id built from the - * specified values. + * @retval This method returns an object Id built from the + * specified values. * - * @note A body is also provided. + * @note A body is also provided. */ #define rtems_build_id( _api, _class, _node, _index ) \ _Objects_Build_id( _api, _class, _node, _index ) /** - * @brief Build Thirty-Two Bit Object Name + * @brief Build Thirty-Two Bit Object Name * - * RTEMS Object Helper -- Build an Object Id + * RTEMS Object Helper -- Build an Object Id * - * This function returns an object name composed of the four characters - * C1, C2, C3, and C4. + * This function returns an object name composed of the four characters + * C1, C2, C3, and C4. * - * @param[in] _C1 is the first character of the name - * @param[in] _C2 is the second character of the name - * @param[in] _C3 is the third character of the name - * @param[in] _C4 is the fourth character of the name + * @param[in] _C1 is the first character of the name + * @param[in] _C2 is the second character of the name + * @param[in] _C3 is the third character of the name + * @param[in] _C4 is the fourth character of the name * - * @note This must be implemented as a macro for use in - * Configuration Tables. A body is also provided. + * @note This must be implemented as a macro for use in + * Configuration Tables. A body is also provided. * */ #define rtems_build_name( _C1, _C2, _C3, _C4 ) \ _Objects_Build_name( _C1, _C2, _C3, _C4 ) /** - * @brief Obtain Name of Object + * @brief Obtain Name of Object * - * This directive returns the name associated with the specified - * object ID. + * This directive returns the name associated with the specified + * object ID. * - * @param[in] id is the Id of the object to obtain the name of. - * @param[out] name will be set to the name of the object + * @param[in] id is the Id of the object to obtain the name of. + * @param[out] name will be set to the name of the object * - * @note The object must be have a name of the 32-bit form. + * @note The object must be have a name of the 32-bit form. * - * @return @a *name will contain user defined object name - * @return @a RTEMS_SUCCESSFUL - if successful - * @return error code - if unsuccessful + * @retval @a *name will contain user defined object name + * @retval @a RTEMS_SUCCESSFUL - if successful + * @retval error code - if unsuccessful */ rtems_status_code rtems_object_get_classic_name( rtems_id id, @@ -111,18 +116,18 @@ rtems_status_code rtems_object_get_classic_name( ); /** - * @brief Obtain Object Name as String + * @brief Obtain Object Name as String * - * This directive returns the name associated with the specified - * object ID. + * This directive returns the name associated with the specified + * object ID. * - * @param[in] id is the Id of the object to obtain the name of - * @param[in] length is the length of the output name buffer - * @param[out] name will be set to the name of the object + * @param[in] id is the Id of the object to obtain the name of + * @param[in] length is the length of the output name buffer + * @param[out] name will be set to the name of the object * - * @return @a *name will contain user defined object name - * @return @a name - if successful - * @return @a NULL - if unsuccessful + * @retval @a *name will contain user defined object name + * @retval @a name - if successful + * @retval @a NULL - if unsuccessful */ char *rtems_object_get_name( rtems_id id, @@ -131,20 +136,20 @@ char *rtems_object_get_name( ); /** - * @brief Set Name of Object + * @brief Set Name of Object * - * This method allows the caller to set the name of an - * object. This can be used to set the name of objects - * which do not have a naming scheme per their API. + * This method allows the caller to set the name of an + * object. This can be used to set the name of objects + * which do not have a naming scheme per their API. * - * RTEMS Object Helper -- Set Name of Object as String + * RTEMS Object Helper -- Set Name of Object as String * - * @param[in] id is the Id of the object to obtain the name of - * @param[out] name will be set to the name of the object + * @param[in] id is the Id of the object to obtain the name of + * @param[out] name will be set to the name of the object * - * @return @a *name will contain user defined object name - * @return @a RTEMS_SUCCESSFUL - if successful - * @return error code - if unsuccessful + * @retval @a *name will contain user defined object name + * @retval @a RTEMS_SUCCESSFUL - if successful + * @retval error code - if unsuccessful */ rtems_status_code rtems_object_set_name( rtems_id id, @@ -152,131 +157,131 @@ rtems_status_code rtems_object_set_name( ); /** - * @brief Get API Portion of Object Id + * @brief Get API Portion of Object Id * - * RTEMS Object Helper -- Extract API From Id + * RTEMS Object Helper -- Extract API From Id * - * This function returns the API portion of the Id. + * This function returns the API portion of the Id. * - * @param[in] _id is the Id of the object to obtain the API from + * @param[in] _id is the Id of the object to obtain the API from * - * @return This method returns the API portion of the provided - * @a _id. + * @retval This method returns the API portion of the provided + * @a _id. * - * @note This method does NOT validate the @a _id provided. + * @note This method does NOT validate the @a _id provided. * - * @note A body is also provided. + * @note A body is also provided. */ #define rtems_object_id_get_api( _id ) \ _Objects_Get_API( _id ) /** - * @brief Get Class Portion of Object Id + * @brief Get Class Portion of Object Id * - * This function returns the class portion of the @a _id ID. + * This function returns the class portion of the @a _id ID. * - * @param[in] _id is the Id of the object to obtain the class from + * @param[in] _id is the Id of the object to obtain the class from * - * @return This method returns the class portion of the provided - * @a _id. + * @retval This method returns the class portion of the provided + * @a _id. * - * @note This method does NOT validate the @a _id provided. + * @note This method does NOT validate the @a _id provided. * - * @note A body is also provided. + * @note A body is also provided. */ #define rtems_object_id_get_class( _id ) \ _Objects_Get_class( _id ) /** - * @brief Get Node Portion of Object Id + * @brief Get Node Portion of Object Id * - * This function returns the node portion of the ID. + * This function returns the node portion of the ID. * - * @param[in] _id is the Id of the object to obtain the node from + * @param[in] _id is the Id of the object to obtain the node from * - * @return This method returns the node portion of the provided + * @retval This method returns the node portion of the provided * @a _id. * - * @note This method does NOT validate the @a _id provided. + * @note This method does NOT validate the @a _id provided. * - * @note A body is also provided. + * @note A body is also provided. */ #define rtems_object_id_get_node( _id ) \ _Objects_Get_node( _id ) /** - * @brief Get Index Portion of Object Id + * @brief Get Index Portion of Object Id * - * This function returns the index portion of the ID. + * This function returns the index portion of the ID. * - * @param[in] _id is the Id of the object to obtain the index from + * @param[in] _id is the Id of the object to obtain the index from * - * @return This method returns the index portion of the provided - * @a _id. + * @retval This method returns the index portion of the provided + * @a _id. * - * @note This method does NOT validate the @a _id provided. + * @note This method does NOT validate the @a _id provided. * - * @note A body is also provided. + * @note A body is also provided. */ #define rtems_object_id_get_index( _id ) \ _Objects_Get_index( _id ) /** - * @brief Get Lowest Valid API Index + * @brief Get Lowest Valid API Index * - * This method returns the lowest valid value for the API - * portion of an RTEMS object Id. + * This method returns the lowest valid value for the API + * portion of an RTEMS object Id. * - * @return This method returns the least valid value for - * the API portion of an RTEMS object Id. + * @retval This method returns the least valid value for + * the API portion of an RTEMS object Id. * - * @note A body is also provided. + * @note A body is also provided. */ #define rtems_object_id_api_minimum() \ OBJECTS_INTERNAL_API /** - * @brief Get Highest Valid API Index + * @brief Get Highest Valid API Index * - * This method returns the highest valid value for the API - * portion of an RTEMS object Id. + * This method returns the highest valid value for the API + * portion of an RTEMS object Id. * - * @return This method returns the greatest valid value for - * the API portion of an RTEMS object Id. + * @retval This method returns the greatest valid value for + * the API portion of an RTEMS object Id. * - * @note A body is also provided. + * @note A body is also provided. */ #define rtems_object_id_api_maximum() \ OBJECTS_APIS_LAST /** - * @brief Get Lowest Valid Class Value + * @brief Get Lowest Valid Class Value * - * This method returns the lowest valid value Class for the - * specified @a api. Each API supports a different number - * of object classes. + * This method returns the lowest valid value Class for the + * specified @a api. Each API supports a different number + * of object classes. * - * @param[in] api is the API to obtain the minimum class of + * @param[in] api is the API to obtain the minimum class of * - * @return This method returns the least valid value for - * class number for the specified @a api. - * RTEMS Object Helper -- Get Least Valid Class for an API + * @retval This method returns the least valid value for + * class number for the specified @a api. + * RTEMS Object Helper -- Get Least Valid Class for an API */ int rtems_object_api_minimum_class( int api ); /** - * @brief Get Highest Valid Class Value + * @brief Get Highest Valid Class Value * - * This method returns the highest valid value Class for the - * specified @a api. Each API supports a different number - * of object classes. + * This method returns the highest valid value Class for the + * specified @a api. Each API supports a different number + * of object classes. * - * @param[in] api is the API to obtain the maximum class of + * @param[in] api is the API to obtain the maximum class of * - * @return This method returns the greatet valid value for - * class number for the specified @a api. + * @retval This method returns the greatet valid value for + * class number for the specified @a api. */ int rtems_object_api_maximum_class( int api @@ -284,49 +289,49 @@ int rtems_object_api_maximum_class( /** - * @brief Get Highest Valid Class Value + * @brief Get Highest Valid Class Value * - * This method returns the lowest valid value Class for the - * specified @a api. Each API supports a different number - * of object classes. + * This method returns the lowest valid value Class for the + * specified @a api. Each API supports a different number + * of object classes. * - * @param[in] api is the API to obtain the maximum class of + * @param[in] api is the API to obtain the maximum class of * - * @return This method returns the least valid value for - * class number for the specified @a api. + * @retval This method returns the least valid value for + * class number for the specified @a api. */ int rtems_object_id_api_maximum_class( int api ); /** - * @brief Get API Name + * @brief Get API Name * - * This method returns a string containing the name of the - * specified @a api. + * This method returns a string containing the name of the + * specified @a api. * - * @param[in] api is the API to obtain the name of + * @param[in] api is the API to obtain the name of * - * @return If successful, this method returns the name of - * the specified @a api. Otherwise, it returns - * the string "BAD API" + * @retval If successful, this method returns the name of + * the specified @a api. Otherwise, it returns + * the string "BAD API" */ const char *rtems_object_get_api_name( int api ); /** - * @brief Get Class Name + * @brief Get Class Name * - * This method returns a string containing the name of the - * @a class from the specified @a api. + * This method returns a string containing the name of the + * @a class from the specified @a api. * - * @param[in] the_api is the API for the class - * @param[in] the_class is the class to obtain the name of + * @param[in] the_api is the API for the class + * @param[in] the_class is the class to obtain the name of * - * @return If successful, this method returns the name of - * the specified @a class. Otherwise, it returns - * the string "BAD CLASS" + * @retval If successful, this method returns the name of + * the specified @a class. Otherwise, it returns + * the string "BAD CLASS" */ const char *rtems_object_get_api_class_name( int the_api, @@ -334,18 +339,18 @@ const char *rtems_object_get_api_class_name( ); /** - * @brief Get Class Information + * @brief Get Class Information * - * This method returns a string containing the name of the - * @a the_class from the specified @a api. + * This method returns a string containing the name of the + * @a the_class from the specified @a api. * - * @param[in] the_api is the API for the class - * @param[in] the_class is the class to obtain information about - * @param[in] info points to the information structure to fill in + * @param[in] the_api is the API for the class + * @param[in] the_class is the class to obtain information about + * @param[in] info points to the information structure to fill in * - * @return If successful, this method returns the name of - * RTEMS_SUCCESSFUL with @a *info filled in. Otherwise, - * a status is returned to indicate the error. + * @retval If successful, this method returns the name of + * RTEMS_SUCCESSFUL with @a *info filled in. Otherwise, + * a status is returned to indicate the error. * */ rtems_status_code rtems_object_get_class_information( diff --git a/cpukit/rtems/include/rtems/rtems/options.h b/cpukit/rtems/include/rtems/rtems/options.h index 6b30cc3044..29c0351a34 100644 --- a/cpukit/rtems/include/rtems/rtems/options.h +++ b/cpukit/rtems/include/rtems/rtems/options.h @@ -1,18 +1,21 @@ /** * @file rtems/rtems/options.h * - * @brief Information Which Defines the Options Available on Many Directives. + * @defgroup ClassicOptions Classic API Options * - * This include file contains information which defines the - * options available on many directives. + * @ingroup ClassicRTEMS + * @brief Options Available on Many Directives + * + * This include file contains information which defines the + * options available on many directives. */ -/* COPYRIGHT (c) 1989-2008. - * On-Line Applications Research Corporation (OAR). +/* COPYRIGHT (c) 1989-2008. + * On-Line Applications Research Corporation (OAR). * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.com/license/LICENSE. + * The license and distribution terms for this file may be + * found in the file LICENSE in this distribution or at + * http://www.rtems.com/license/LICENSE. */ #ifndef _RTEMS_RTEMS_OPTIONS_H @@ -23,9 +26,13 @@ extern "C" { #endif /** - * @defgroup ClassicOptions Classic API Options + * @defgroup ClassicOptions Classic API Options + * + * @ingroup ClassicRTEMS * - * This encapsulates functionality which XXX + * This encapsulates functionality related to the options argument + * to Classic API blocking operations. The primary option is whether + * or not a task is willing to wait for the operation to complete. */ /**@{*/ diff --git a/cpukit/rtems/include/rtems/rtems/part.h b/cpukit/rtems/include/rtems/rtems/part.h index ff1cedd823..c864bebc5f 100644 --- a/cpukit/rtems/include/rtems/rtems/part.h +++ b/cpukit/rtems/include/rtems/rtems/part.h @@ -1,40 +1,43 @@ /** * @file rtems/rtems/part.h * - * @brief Constants and Structures Associated with the Partition Manager + * @defgroup ClassicPart Partitions * - * This include file contains all the constants and structures associated - * with the Partition Manager. This manager provides facilities to - * dynamically allocate memory in fixed-sized units which are returned - * as buffers. + * @ingroup ClassicRTEMS + * @brief Partition Manager * - * Directives provided are: + * This include file contains all the constants and structures associated + * with the Partition Manager. This manager provides facilities to + * dynamically allocate memory in fixed-sized units which are returned + * as buffers. * - * - create a partition - * - get an ID of a partition - * - delete a partition - * - get a buffer from a partition - * - return a buffer to a partition + * Directives provided are: + * + * - create a partition + * - get an ID of a partition + * - delete a partition + * - get a buffer from a partition + * - return a buffer to a partition */ -/* COPYRIGHT (c) 1989-2008. - * On-Line Applications Research Corporation (OAR). +/* COPYRIGHT (c) 1989-2008. + * On-Line Applications Research Corporation (OAR). * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.com/license/LICENSE. + * The license and distribution terms for this file may be + * found in the file LICENSE in this distribution or at + * http://www.rtems.com/license/LICENSE. */ #ifndef _RTEMS_RTEMS_PART_H #define _RTEMS_RTEMS_PART_H /** - * This constant is defined to extern most of the time when using - * this header file. However by defining it to nothing, the data - * declared in this header file can be instantiated. This is done - * in a single per manager file. + * This constant is defined to extern most of the time when using + * this header file. However by defining it to nothing, the data + * declared in this header file can be instantiated. This is done + * in a single per manager file. * - * Partition Manager -- Instantiate Data + * Partition Manager -- Instantiate Data */ #ifndef RTEMS_PART_EXTERN #define RTEMS_PART_EXTERN extern @@ -117,22 +120,22 @@ rtems_status_code rtems_partition_create( ); /** - * @brief RTEMS Partition Ident - * - * This routine implements the rtems_partition_ident directive. - * This directive returns the partition ID associated with name. - * If more than one partition is named name, then the partition - * to which the ID belongs is arbitrary. node indicates the - * extent of the search for the ID of the partition named name. - * The search can be limited to a particular node or allowed to - * encompass all nodes. - * - * @param[in] name is the user defined partition name - * @param[in] node is(are) the node(s) to be searched - * @param[in] id is the pointer to partition id - * - * @return RTEMS_SUCCESSFUL if successful or error code if unsuccessful and - * *id filled in with the partition id + * @brief RTEMS Partition Ident + * + * This routine implements the rtems_partition_ident directive. + * This directive returns the partition ID associated with name. + * If more than one partition is named name, then the partition + * to which the ID belongs is arbitrary. node indicates the + * extent of the search for the ID of the partition named name. + * The search can be limited to a particular node or allowed to + * encompass all nodes. + * + * @param[in] name is the user defined partition name + * @param[in] node is(are) the node(s) to be searched + * @param[in] id is the pointer to partition id + * + * @retval RTEMS_SUCCESSFUL if successful or error code if unsuccessful and + * *id filled in with the partition id */ rtems_status_code rtems_partition_ident( rtems_name name, @@ -141,33 +144,33 @@ rtems_status_code rtems_partition_ident( ); /** - * @brief RTEMS Delete Partition + * @brief RTEMS Delete Partition * - * This routine implements the rtems_partition_delete directive. The - * partition indicated by ID is deleted, provided that none of its buffers - * are still allocated. + * This routine implements the rtems_partition_delete directive. The + * partition indicated by ID is deleted, provided that none of its buffers + * are still allocated. * - * @param[in] id is the partition id + * @param[in] id is the partition id * - * @return This method returns RTEMS_SUCCESSFUL if there was not an - * error. Otherwise, a status code is returned indicating the - * source of the error. + * @retval This method returns RTEMS_SUCCESSFUL if there was not an + * error. Otherwise, a status code is returned indicating the + * source of the error. */ rtems_status_code rtems_partition_delete( rtems_id id ); /** - * @brief RTEMS Get Partition Buffer + * @brief RTEMS Get Partition Buffer * - * This routine implements the rtems_partition_get_buffer directive. It - * attempts to allocate a buffer from the partition associated with ID. - * If a buffer is allocated, its address is returned in buffer. + * This routine implements the rtems_partition_get_buffer directive. It + * attempts to allocate a buffer from the partition associated with ID. + * If a buffer is allocated, its address is returned in buffer. * - * @param[in] id is the partition id - * @param[out] buffer is the pointer to buffer address + * @param[in] id is the partition id + * @param[out] buffer is the pointer to buffer address * - * @return RTEMS_SUCCESSFUL if successful or error code if unsuccessful + * @retval RTEMS_SUCCESSFUL if successful or error code if unsuccessful */ rtems_status_code rtems_partition_get_buffer( rtems_id id, diff --git a/cpukit/rtems/include/rtems/rtems/partmp.h b/cpukit/rtems/include/rtems/rtems/partmp.h index fee58e9038..3d3f47fe52 100644 --- a/cpukit/rtems/include/rtems/rtems/partmp.h +++ b/cpukit/rtems/include/rtems/rtems/partmp.h @@ -1,16 +1,18 @@ /** * @file rtems/rtems/partmp.h * - * This include file contains all the constants and structures associated - * with the Multiprocessing Support in the Partition Manager. + * @brief MP Support in Partition Manager + * + * This include file contains all the constants and structures associated + * with the Multiprocessing Support in the Partition Manager. */ -/* COPYRIGHT (c) 1989-2008. - * On-Line Applications Research Corporation (OAR). +/* COPYRIGHT (c) 1989-2008. + * On-Line Applications Research Corporation (OAR). * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.com/license/LICENSE. + * The license and distribution terms for this file may be + * found in the file LICENSE in this distribution or at + * http://www.rtems.com/license/LICENSE. */ #ifndef _RTEMS_RTEMS_PARTMP_H @@ -34,7 +36,7 @@ extern "C" { * * This encapsulates functionality which XXX */ -/**{*/ +/*{*/ /** * The following enumerated type defines the list of diff --git a/cpukit/rtems/include/rtems/rtems/ratemon.h b/cpukit/rtems/include/rtems/rtems/ratemon.h index 2ea3d23a13..634889aeeb 100644 --- a/cpukit/rtems/include/rtems/rtems/ratemon.h +++ b/cpukit/rtems/include/rtems/rtems/ratemon.h @@ -1,28 +1,31 @@ /** * @file rtems/rtems/ratemon.h * - * @brief Constants, Structures, and Prototypes Associated to the Classic API Rate Monotonic Manager. + * @defgroup ClassicRateMon Rate Monotonic Scheduler * - * This include file contains all the constants, structures, and - * prototypes associated with the Rate Monotonic Manager. This manager - * provides facilities to implement threads which execute in a periodic - * fashion. + * @ingroup ClassicRTEMS + * @brief Classic API Rate Monotonic Manager. * - * Directives provided are: + * This include file contains all the constants, structures, and + * prototypes associated with the Rate Monotonic Manager. This manager + * provides facilities to implement threads which execute in a periodic + * fashion. * - * - create a rate monotonic timer - * - cancel a period - * - delete a rate monotonic timer - * - conclude current and start the next period - * - obtain status information on a period + * Directives provided are: + * + * - create a rate monotonic timer + * - cancel a period + * - delete a rate monotonic timer + * - conclude current and start the next period + * - obtain status information on a period */ -/* COPYRIGHT (c) 1989-2009. - * On-Line Applications Research Corporation (OAR). +/* COPYRIGHT (c) 1989-2009. + * On-Line Applications Research Corporation (OAR). * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.com/license/LICENSE. + * The license and distribution terms for this file may be + * found in the file LICENSE in this distribution or at + * http://www.rtems.com/license/LICENSE. */ #ifndef _RTEMS_RTEMS_RATEMON_H @@ -293,19 +296,19 @@ rtems_status_code rtems_rate_monotonic_create( ); /** - * @brief RTEMS Rate Monotonic Name to Id + * @brief RTEMS Rate Monotonic Name to Id * - * This routine implements the rtems_rate_monotonic_ident directive. - * It returns the period ID associated with name. If more than one period - * is named name, then the period to which the ID belongs is arbitrary. + * This routine implements the rtems_rate_monotonic_ident directive. + * It returns the period ID associated with name. If more than one period + * is named name, then the period to which the ID belongs is arbitrary. * - * @param[in] name is the user defined period name - * @param[in] id is the pointer to period id + * @param[in] name is the user defined period name + * @param[in] id is the pointer to period id * - * @return This method returns RTEMS_SUCCESSFUL if there was not an - * error. Otherwise, a status code is returned indicating the - * source of the error. If successful, the id will - * be filled in with the region id. + * @retval This method returns RTEMS_SUCCESSFUL if there was not an + * error. Otherwise, a status code is returned indicating the + * source of the error. If successful, the id will + * be filled in with the region id. */ rtems_status_code rtems_rate_monotonic_ident( rtems_name name, @@ -313,16 +316,16 @@ rtems_status_code rtems_rate_monotonic_ident( ); /** - * @brief RTEMS Rate Monotonic Cancel + * @brief RTEMS Rate Monotonic Cancel * - * This routine implements the rtems_rate_monotonic_cancel directive. This - * directive stops the period associated with ID from continuing to - * run. + * This routine implements the rtems_rate_monotonic_cancel directive. This + * directive stops the period associated with ID from continuing to + * run. * - * @param[in] id is the rate monotonic id + * @param[in] id is the rate monotonic id * - * @return RTEMS_SUCCESSFUL if successful and caller is not the owning thread - * or error code if unsuccessful + * @retval RTEMS_SUCCESSFUL if successful and caller is not the owning thread + * or error code if unsuccessful * */ rtems_status_code rtems_rate_monotonic_cancel( @@ -330,33 +333,33 @@ rtems_status_code rtems_rate_monotonic_cancel( ); /** - * @brief RTEMS Delete Rate Monotonic + * @brief RTEMS Delete Rate Monotonic * - * This routine implements the rtems_rate_monotonic_delete directive. The - * period indicated by ID is deleted. + * This routine implements the rtems_rate_monotonic_delete directive. The + * period indicated by ID is deleted. * - * @param[in] id is the rate monotonic id + * @param[in] id is the rate monotonic id * - * @return This method returns RTEMS_SUCCESSFUL if there was not an - * error. Otherwise, a status code is returned indicating the - * source of the error. + * @retval This method returns RTEMS_SUCCESSFUL if there was not an + * error. Otherwise, a status code is returned indicating the + * source of the error. */ rtems_status_code rtems_rate_monotonic_delete( rtems_id id ); /** - * @brief RTEMS Rate Monotonic Get Status + * @brief RTEMS Rate Monotonic Get Status * - * This routine implements the rtems_rate_monotonic_get_status directive. - * Information about the period indicated by ID is returned. + * This routine implements the rtems_rate_monotonic_get_status directive. + * Information about the period indicated by ID is returned. * - * @param[in] id is the rate monotonic id - * @param[in] status is the pointer to status control block + * @param[in] id is the rate monotonic id + * @param[in] status is the pointer to status control block * - * @return This method returns RTEMS_SUCCESSFUL if there was not an - * error. Otherwise, a status code is returned indicating the - * source of the error. + * @retval This method returns RTEMS_SUCCESSFUL if there was not an + * error. Otherwise, a status code is returned indicating the + * source of the error. * */ rtems_status_code rtems_rate_monotonic_get_status( @@ -365,15 +368,15 @@ rtems_status_code rtems_rate_monotonic_get_status( ); /** - * @brief RTEMS Rate Monotonic Get Statistics + * @brief RTEMS Rate Monotonic Get Statistics * - * This routine implements the rtems_rate_monotonic_get_statistics directive. - * Statistics gathered from the use of this period are returned. + * This routine implements the rtems_rate_monotonic_get_statistics directive. + * Statistics gathered from the use of this period are returned. * - * @param[in] id is the rate monotonic id - * @param[in] statistics is the pointer to statistics control block + * @param[in] id is the rate monotonic id + * @param[in] statistics is the pointer to statistics control block * - * @return RTEMS_SUCCESSFUL if successful or error code if unsuccessful + * @retval RTEMS_SUCCESSFUL if successful or error code if unsuccessful */ rtems_status_code rtems_rate_monotonic_get_statistics( rtems_id id, @@ -423,17 +426,17 @@ void rtems_rate_monotonic_report_statistics_with_plugin( void rtems_rate_monotonic_report_statistics( void ); /** - * @brief RTEMS Rate Monotonic Period + * @brief RTEMS Rate Monotonic Period * - * This routine implements the rtems_rate_monotonic_period directive. When - * length is non-zero, this directive initiates the period associated with - * ID from continuing for a period of length. If length is zero, then - * result is set to indicate the current state of the period. + * This routine implements the rtems_rate_monotonic_period directive. When + * length is non-zero, this directive initiates the period associated with + * ID from continuing for a period of length. If length is zero, then + * result is set to indicate the current state of the period. * - * @param[in] id is the rate monotonic id - * @param[in] lenght is the length of period (in ticks) + * @param[in] id is the rate monotonic id + * @param[in] length is the length of period (in ticks) * - * @return RTEMS_SUCCESSFUL if successful or error code if unsuccessful + * @retval RTEMS_SUCCESSFUL if successful or error code if unsuccessful */ rtems_status_code rtems_rate_monotonic_period( rtems_id id, @@ -441,16 +444,16 @@ rtems_status_code rtems_rate_monotonic_period( ); /** - * @brief Rate Monotonic Timeout + * @brief Rate Monotonic Timeout * - * This routine is invoked when the period represented - * by ID expires. If the thread which owns this period is blocked - * waiting for the period to expire, then it is readied and the - * period is restarted. If the owning thread is not waiting for the - * period to expire, then the period is placed in the EXPIRED - * state and not restarted. + * This routine is invoked when the period represented + * by ID expires. If the thread which owns this period is blocked + * waiting for the period to expire, then it is readied and the + * period is restarted. If the owning thread is not waiting for the + * period to expire, then the period is placed in the EXPIRED + * state and not restarted. * - * @param[in] id is the period id + * @param[in] id is the period id */ void _Rate_monotonic_Timeout( rtems_id id, @@ -458,19 +461,19 @@ void _Rate_monotonic_Timeout( ); /** - * @brief _Rate_monotonic_Get_status( + * @brief _Rate_monotonic_Get_status( * - * This routine is invoked to compute the elapsed wall time and cpu - * time for a period. + * This routine is invoked to compute the elapsed wall time and cpu + * time for a period. * - * @param[in] the_period points to the period being operated upon. - * @param[out] wall_since_last_period is set to the wall time elapsed - * since the period was initiated. - * @param[out] cpu_since_last_period is set to the cpu time used by the - * owning thread since the period was initiated. + * @param[in] the_period points to the period being operated upon. + * @param[out] wall_since_last_period is set to the wall time elapsed + * since the period was initiated. + * @param[out] cpu_since_last_period is set to the cpu time used by the + * owning thread since the period was initiated. * - * @return This routine returns true if the status can be determined - * and false otherwise. + * @retval This routine returns true if the status can be determined + * and false otherwise. */ bool _Rate_monotonic_Get_status( Rate_monotonic_Control *the_period, diff --git a/cpukit/rtems/include/rtems/rtems/region.h b/cpukit/rtems/include/rtems/rtems/region.h index 73d66d290d..a99a497b8d 100644 --- a/cpukit/rtems/include/rtems/rtems/region.h +++ b/cpukit/rtems/include/rtems/rtems/region.h @@ -1,27 +1,30 @@ /** * @file rtems/rtems/region.h * - * @brief Constants and Structures Associated with the Region Manager + * @defgroup ClassicRegion Regions * - * This include file contains all the constants and structures associated - * with the Region Manager. This manager provides facilities to dynamically - * allocate memory in variable sized units which are returned as segments. + * @ingroup ClassicRTEMS + * @brief Region Manager * - * Directives provided are: + * This include file contains all the constants and structures associated + * with the Region Manager. This manager provides facilities to dynamically + * allocate memory in variable sized units which are returned as segments. * - * - create a region - * - get an ID of a region - * - delete a region - * - get a segment from a region - * - return a segment to a region + * Directives provided are: + * + * - create a region + * - get an ID of a region + * - delete a region + * - get a segment from a region + * - return a segment to a region */ -/* COPYRIGHT (c) 1989-2009. - * On-Line Applications Research Corporation (OAR). +/* COPYRIGHT (c) 1989-2009. + * On-Line Applications Research Corporation (OAR). * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.com/license/LICENSE. + * The license and distribution terms for this file may be + * found in the file LICENSE in this distribution or at + * http://www.rtems.com/license/LICENSE. */ #ifndef _RTEMS_RTEMS_REGION_H @@ -119,20 +122,20 @@ rtems_status_code rtems_region_create( ); /** - * @brief RTEMS Extend Region + * @brief RTEMS Extend Region * - * This routine implements the rtems_region_extend directive. The - * region will have the name name. The memory area managed by - * the region will be attempted to be grown by length bytes using - * the memory starting at starting_address. + * This routine implements the rtems_region_extend directive. The + * region will have the name name. The memory area managed by + * the region will be attempted to be grown by length bytes using + * the memory starting at starting_address. * - * @param[in] id is the id of region to grow - * @param[in] starting_address starting address of memory area for extension - * @param[in] length is the physical length in bytes to grow the region + * @param[in] id is the id of region to grow + * @param[in] starting_address starting address of memory area for extension + * @param[in] length is the physical length in bytes to grow the region * - * @return This method returns RTEMS_SUCCESSFUL if there was not an - * error. Otherwise, a status code is returned indicating the - * source of the error. + * @retval This method returns RTEMS_SUCCESSFUL if there was not an + * error. Otherwise, a status code is returned indicating the + * source of the error. */ rtems_status_code rtems_region_extend( rtems_id id, @@ -141,20 +144,20 @@ rtems_status_code rtems_region_extend( ); /** - * @brief RTEMS Region Name to Id + * @brief RTEMS Region Name to Id * - * This routine implements the rtems_region_ident directive. - * This directive returns the region ID associated with name. - * If more than one region is named name, then the region - * to which the ID belongs is arbitrary. + * This routine implements the rtems_region_ident directive. + * This directive returns the region ID associated with name. + * If more than one region is named name, then the region + * to which the ID belongs is arbitrary. * - * @param[in] name is the user defined region name - * @param[in] id is the pointer to region id + * @param[in] name is the user defined region name + * @param[in] id is the pointer to region id * - * @return This method returns RTEMS_SUCCESSFUL if there was not an - * error. Otherwise, a status code is returned indicating the - * source of the error. If successful, the id will - * be filled in with the region id. + * @retval This method returns RTEMS_SUCCESSFUL if there was not an + * error. Otherwise, a status code is returned indicating the + * source of the error. If successful, the id will + * be filled in with the region id. */ rtems_status_code rtems_region_ident( rtems_name name, @@ -162,17 +165,17 @@ rtems_status_code rtems_region_ident( ); /** - * @brief RTEMS Get Region Information + * @brief RTEMS Get Region Information * - * This routine implements the rtems_region_get_information directive. - * This directive returns information about the heap associated with - * this region. + * This routine implements the rtems_region_get_information directive. + * This directive returns information about the heap associated with + * this region. * - * @param[in] id is the region id - * @param[in] the_info is the pointer to region information block + * @param[in] id is the region id + * @param[in] the_info is the pointer to region information block * - * @return RTEMS_SUCCESSFUL if successful or error code if unsuccessful and - * *id filled with the region information block + * @retval RTEMS_SUCCESSFUL if successful or error code if unsuccessful and + * *id filled with the region information block */ rtems_status_code rtems_region_get_information( rtems_id id, @@ -180,20 +183,20 @@ rtems_status_code rtems_region_get_information( ); /** - * @brief RTEMS Get Region Free Information + * @brief RTEMS Get Region Free Information * - * This routine implements the rtems_region_get_free_information directive. - * This directive returns information about the free blocks in the - * heap associated with this region. Information about the used blocks - * will be returned as zero. + * This routine implements the rtems_region_get_free_information directive. + * This directive returns information about the free blocks in the + * heap associated with this region. Information about the used blocks + * will be returned as zero. * - * @param[in] id is the region id - * @param[in] the_info is the pointer to region information block + * @param[in] id is the region id + * @param[in] the_info is the pointer to region information block * - * @return This method returns RTEMS_SUCCESSFUL if there was not an - * error. Otherwise, a status code is returned indicating the - * source of the error. If successful, the the_info will - * be filled in with the region information block. + * @retval This method returns RTEMS_SUCCESSFUL if there was not an + * error. Otherwise, a status code is returned indicating the + * source of the error. If successful, the the_info will + * be filled in with the region information block. */ rtems_status_code rtems_region_get_free_information( rtems_id id, @@ -201,43 +204,43 @@ rtems_status_code rtems_region_get_free_information( ); /** - * @brief RTEMS Delete Region + * @brief RTEMS Delete Region * - * This routine implements the rtems_region_delete directive. The - * region indicated by ID is deleted, provided that none of its segments are - * still allocated. + * This routine implements the rtems_region_delete directive. The + * region indicated by ID is deleted, provided that none of its segments are + * still allocated. * - * @param[in] id is the region id + * @param[in] id is the region id * - * @return This method returns RTEMS_SUCCESSFUL if there was not an - * error. Otherwise, a status code is returned indicating the - * source of the error. + * @retval This method returns RTEMS_SUCCESSFUL if there was not an + * error. Otherwise, a status code is returned indicating the + * source of the error. */ rtems_status_code rtems_region_delete( rtems_id id ); /** - * @brief RTEMS Get Region Segment - * - * This routine implements the rtems_region_get_segment directive. It - * attempts to allocate a segment from the region associated with @a id. - * If a segment of the requested @a size size can be allocated, its address - * is returned in @a segment. If no segment is available, then the task - * may return immediately or block waiting for a segment with an optional - * timeout of @a timeout clock ticks. Whether the task blocks or returns - * immediately is based on the no_wait option in the @a option_set. - * - * @param[in] id is the region id - * @param[in] size is the segment size in bytes - * @param[in] option_set is the wait option - * @param[in] timeout is the number of ticks to wait (0 means wait forever) - * @param[in] segment is the pointer to segment address - * - * @return This method returns RTEMS_SUCCESSFUL if there was not an - * error. Otherwise, a status code is returned indicating the - * source of the error. If successful, the segment will - * be filled in with the segment address. + * @brief RTEMS Get Region Segment + * + * This routine implements the rtems_region_get_segment directive. It + * attempts to allocate a segment from the region associated with @a id. + * If a segment of the requested @a size size can be allocated, its address + * is returned in @a segment. If no segment is available, then the task + * may return immediately or block waiting for a segment with an optional + * timeout of @a timeout clock ticks. Whether the task blocks or returns + * immediately is based on the no_wait option in the @a option_set. + * + * @param[in] id is the region id + * @param[in] size is the segment size in bytes + * @param[in] option_set is the wait option + * @param[in] timeout is the number of ticks to wait (0 means wait forever) + * @param[in] segment is the pointer to segment address + * + * @retval This method returns RTEMS_SUCCESSFUL if there was not an + * error. Otherwise, a status code is returned indicating the + * source of the error. If successful, the segment will + * be filled in with the segment address. */ rtems_status_code rtems_region_get_segment( rtems_id id, @@ -248,19 +251,19 @@ rtems_status_code rtems_region_get_segment( ); /** - * @brief RTEMS Get Region Segment Size + * @brief RTEMS Get Region Segment Size * - * This routine implements the rtems_region_get_segment_size directive. It - * returns the size in bytes of the specified user memory area. + * This routine implements the rtems_region_get_segment_size directive. It + * returns the size in bytes of the specified user memory area. * - * @param[in] id is the region id - * @param[in] segment is the segment address - * @param[in] size is the pointer to segment size in bytes + * @param[in] id is the region id + * @param[in] segment is the segment address + * @param[in] size is the pointer to segment size in bytes * - * @return This method returns RTEMS_SUCCESSFUL if there was not an - * error. Otherwise, a status code is returned indicating the - * source of the error. If successful, the size will - * be filled in with the segment size in bytes. + * @retval This method returns RTEMS_SUCCESSFUL if there was not an + * error. Otherwise, a status code is returned indicating the + * source of the error. If successful, the size will + * be filled in with the segment size in bytes. */ rtems_status_code rtems_region_get_segment_size( rtems_id id, @@ -269,20 +272,20 @@ rtems_status_code rtems_region_get_segment_size( ); /** - * @brief RTEMS Return Region Segment + * @brief RTEMS Return Region Segment * - * This routine implements the rtems_region_return_segment directive. It - * frees the segment to the region associated with ID. The segment must - * have been previously allocated from the same region. If freeing the - * segment results in enough memory being available to satisfy the - * rtems_region_get_segment of the first blocked task, then that task and as - * many subsequent tasks as possible will be unblocked with their requests - * satisfied. + * This routine implements the rtems_region_return_segment directive. It + * frees the segment to the region associated with ID. The segment must + * have been previously allocated from the same region. If freeing the + * segment results in enough memory being available to satisfy the + * rtems_region_get_segment of the first blocked task, then that task and as + * many subsequent tasks as possible will be unblocked with their requests + * satisfied. * - * @param[in] id is the region id - * @param[in] segment is the pointer to segment address + * @param[in] id is the region id + * @param[in] segment is the pointer to segment address * - * @return RTEMS_SUCCESSFUL if successful or error code if unsuccessful + * @retval RTEMS_SUCCESSFUL if successful or error code if unsuccessful */ rtems_status_code rtems_region_return_segment( rtems_id id, @@ -290,27 +293,27 @@ rtems_status_code rtems_region_return_segment( ); /** - * @brief Resize RTEMS Region Segment - * - * This routine implements the rtems_region_resize_segment directive. It - * tries to resize segment in the region associated with 'id' to the new size - * 'size' in place. The first 'size' or old size bytes of the segment - * (whatever is less) are guaranteed to remain unmodified. The segment must - * have been previously allocated from the same region. If resizing the - * segment results in enough memory being available to satisfy the - * rtems_region_get_segment of the first blocked task, then that task and as - * many subsequent tasks as possible will be unblocked with their requests - * satisfied. - * - * @param[in] id is the region id - * @param[in] segmet is the pointer to segment address - * @param[in] size is the new required size - * @return RTEMS_SUCCESSFUL if operation successful, RTEMS_UNSATISFIED if the - * the segment can't be resized in place or any other code atfailure - * - * @note On RTEMS_SUCCESSFUL or RTEMS_UNSATISFIED exit it returns into the - * 'old_size' the old size in bytes of the user memory area of the - * specified segment. + * @brief Resize RTEMS Region Segment + * + * This routine implements the rtems_region_resize_segment directive. It + * tries to resize segment in the region associated with 'id' to the new size + * 'size' in place. The first 'size' or old size bytes of the segment + * (whatever is less) are guaranteed to remain unmodified. The segment must + * have been previously allocated from the same region. If resizing the + * segment results in enough memory being available to satisfy the + * rtems_region_get_segment of the first blocked task, then that task and as + * many subsequent tasks as possible will be unblocked with their requests + * satisfied. + * + * @param[in] id is the region id + * @param[in] segment is the pointer to segment address + * @param[in] size is the new required size + * @retval RTEMS_SUCCESSFUL if operation successful, RTEMS_UNSATISFIED if the + * the segment can't be resized in place or any other code at failure + * + * @note On RTEMS_SUCCESSFUL or RTEMS_UNSATISFIED exit it returns into the + * 'old_size' the old size in bytes of the user memory area of the + * specified segment. */ rtems_status_code rtems_region_resize_segment( rtems_id id, diff --git a/cpukit/rtems/include/rtems/rtems/regionmp.h b/cpukit/rtems/include/rtems/rtems/regionmp.h index f4adc2bda1..4ec1eb10c8 100644 --- a/cpukit/rtems/include/rtems/rtems/regionmp.h +++ b/cpukit/rtems/include/rtems/rtems/regionmp.h @@ -1,16 +1,21 @@ /** * @file rtems/rtems/regionmp.h * - * This include file contains all the constants and structures associated - * with the Multiprocessing Support in the Region Manager. + * @defgroup ClassicRegionMP Region MP Support + * + * @ingroup ClassicMP + * @brief Multiprocessing Support in Region Manager + * + * This include file contains all the constants and structures associated + * with the Multiprocessing Support in the Region Manager. */ -/* COPYRIGHT (c) 1989-2008. - * On-Line Applications Research Corporation (OAR). +/* COPYRIGHT (c) 1989-2008. + * On-Line Applications Research Corporation (OAR). * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.com/license/LICENSE. + * The license and distribution terms for this file may be + * found in the file LICENSE in this distribution or at + * http://www.rtems.com/license/LICENSE. */ #ifndef _RTEMS_RTEMS_REGIONMP_H diff --git a/cpukit/rtems/include/rtems/rtems/rtemsapi.h b/cpukit/rtems/include/rtems/rtems/rtemsapi.h index 5d74fa6790..039436ded1 100644 --- a/cpukit/rtems/include/rtems/rtems/rtemsapi.h +++ b/cpukit/rtems/include/rtems/rtems/rtemsapi.h @@ -1,15 +1,22 @@ /** * @file rtems/rtems/rtemsapi.h * - * RTEMS API Support + * @defgroup ClassicAPI RTEMS API Support + * + * @ingroup ClassicRTEMS + * @brief RTEMS API Support + * + * This routine initializes the RTEMS API by invoking the initialization + * routine for each RTEMS manager with the appropriate parameters + * from the configuration_table. */ -/* COPYRIGHT (c) 1989-2008. - * On-Line Applications Research Corporation (OAR). +/* COPYRIGHT (c) 1989-2008. + * On-Line Applications Research Corporation (OAR). * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.com/license/LICENSE. + * The license and distribution terms for this file may be + * found in the file LICENSE in this distribution or at + * http://www.rtems.com/license/LICENSE. */ #ifndef _RTEMS_RTEMS_RTEMSAPI_H diff --git a/cpukit/rtems/include/rtems/rtems/sem.h b/cpukit/rtems/include/rtems/rtems/sem.h index ea0aea32ca..dafd1eac0d 100644 --- a/cpukit/rtems/include/rtems/rtems/sem.h +++ b/cpukit/rtems/include/rtems/rtems/sem.h @@ -1,40 +1,46 @@ /** * @file rtems/rtems/sem.h * - * This include file contains all the constants and structures associated - * with the Semaphore Manager. This manager utilizes standard Dijkstra - * counting semaphores to provide synchronization and mutual exclusion - * capabilities. - * - * Directives provided are: - * - * - create a semaphore - * - get an ID of a semaphore - * - delete a semaphore - * - acquire a semaphore - * - release a semaphore + * @brief Semaphore Manager + * + * @defgroup ClassicSem Semaphores + * + * @ingroup ClassicRTEMS + * + * This include file contains all the constants and structures associated + * with the Semaphore Manager. This manager utilizes standard Dijkstra + * counting semaphores to provide synchronization and mutual exclusion + * capabilities. + * + * Directives provided are: + * + * - create a semaphore + * - get an ID of a semaphore + * - delete a semaphore + * - acquire a semaphore + * - release a semaphore */ -/* COPYRIGHT (c) 1989-2008. - * On-Line Applications Research Corporation (OAR). +/* COPYRIGHT (c) 1989-2008. + * On-Line Applications Research Corporation (OAR). * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.com/license/LICENSE. + * The license and distribution terms for this file may be + * found in the file LICENSE in this distribution or at + * http://www.rtems.com/license/LICENSE. */ #ifndef _RTEMS_RTEMS_SEM_H #define _RTEMS_RTEMS_SEM_H /** - * @brief Instantiate Semaphore Data + * @brief Instantiate Semaphore Data * - * Semaphore Manager -- Data Instantiation + * Semaphore Manager -- Data Instantiation * - * This constant is defined to extern most of the time when using - * this header file. However by defining it to nothing, the data - * declared in this header file can be instantiated. This is done - * in a single per manager file. + * This constant is defined to extern most of the time when using + * this header file. However by defining it to nothing, the data + * declared in this header file can be instantiated. This is done + * in a single per manager file. * */ #ifndef RTEMS_SEM_EXTERN @@ -135,22 +141,22 @@ rtems_status_code rtems_semaphore_create( ); /** - * @brief RTEMS Semaphore Name to Id - * - * This routine implements the rtems_semaphore_ident directive. - * This directive returns the semaphore ID associated with name. - * If more than one semaphore is named name, then the semaphore - * to which the ID belongs is arbitrary. node indicates the - * extent of the search for the ID of the semaphore named name. - * The search can be limited to a particular node or allowed to - * encompass all nodes. - * - * @param[in] name is the user defined semaphore name - * @param[in] node is(are) the node(s) to be searched - * @param[in] id is the pointer to semaphore id - * - * @return RTEMS_SUCCESSFUL if successful or error code if unsuccessful and - * *id filled in with the semaphore id + * @brief RTEMS Semaphore Name to Id + * + * This routine implements the rtems_semaphore_ident directive. + * This directive returns the semaphore ID associated with name. + * If more than one semaphore is named name, then the semaphore + * to which the ID belongs is arbitrary. node indicates the + * extent of the search for the ID of the semaphore named name. + * The search can be limited to a particular node or allowed to + * encompass all nodes. + * + * @param[in] name is the user defined semaphore name + * @param[in] node is(are) the node(s) to be searched + * @param[in] id is the pointer to semaphore id + * + * @retval RTEMS_SUCCESSFUL if successful or error code if unsuccessful and + * *id filled in with the semaphore id */ rtems_status_code rtems_semaphore_ident( rtems_name name, @@ -159,39 +165,39 @@ rtems_status_code rtems_semaphore_ident( ); /** - * @brief RTEMS Delete Semaphore + * @brief RTEMS Delete Semaphore * - * This routine implements the rtems_semaphore_delete directive. The - * semaphore indicated by ID is deleted. + * This routine implements the rtems_semaphore_delete directive. The + * semaphore indicated by ID is deleted. * - * @param[in] id is the semaphore id + * @param[in] id is the semaphore id * - * @return This method returns RTEMS_SUCCESSFUL if there was not an - * error. Otherwise, a status code is returned indicating the - * source of the error. + * @retval This method returns RTEMS_SUCCESSFUL if there was not an + * error. Otherwise, a status code is returned indicating the + * source of the error. */ rtems_status_code rtems_semaphore_delete( rtems_id id ); /** - * @brief RTEMS Obtain Semaphore - * - * This routine implements the rtems_semaphore_obtain directive. It - * attempts to obtain a unit from the semaphore associated with ID. - * If a unit can be allocated, the calling task will return immediately. - * If no unit is available, then the task may return immediately or - * block waiting for a unit with an optional timeout of timeout - * clock ticks. Whether the task blocks or returns immediately - * is based on the RTEMS_NO_WAIT option in the option_set. - * - * @param[in] id is the semaphore id - * @param[in] option_set is the wait option - * @param[in] timeout is the number of ticks to wait (0 means wait forever) - * - * @return This method returns RTEMS_SUCCESSFUL if there was not an - * error. Otherwise, a status code is returned indicating the - * source of the error. + * @brief RTEMS Obtain Semaphore + * + * This routine implements the rtems_semaphore_obtain directive. It + * attempts to obtain a unit from the semaphore associated with ID. + * If a unit can be allocated, the calling task will return immediately. + * If no unit is available, then the task may return immediately or + * block waiting for a unit with an optional timeout of timeout + * clock ticks. Whether the task blocks or returns immediately + * is based on the RTEMS_NO_WAIT option in the option_set. + * + * @param[in] id is the semaphore id + * @param[in] option_set is the wait option + * @param[in] timeout is the number of ticks to wait (0 means wait forever) + * + * @retval This method returns RTEMS_SUCCESSFUL if there was not an + * error. Otherwise, a status code is returned indicating the + * source of the error. */ rtems_status_code rtems_semaphore_obtain( rtems_id id, @@ -215,18 +221,18 @@ rtems_status_code rtems_semaphore_release( ); /** - * @brief RTEMS Semaphore Flush + * @brief RTEMS Semaphore Flush * - * DESCRIPTION: - * This package is the implementation of the flush directive - * of the Semaphore Manager. + * DESCRIPTION: + * This package is the implementation of the flush directive + * of the Semaphore Manager. * - * This directive allows a thread to flush the threads - * pending on the semaphore. + * This directive allows a thread to flush the threads + * pending on the semaphore. * - * @param[in] id is the semaphore id + * @param[in] id is the semaphore id * - * @return RTEMS_SUCCESSFUL if successful or error code if unsuccessful + * @retval RTEMS_SUCCESSFUL if successful or error code if unsuccessful */ rtems_status_code rtems_semaphore_flush( rtems_id id @@ -246,28 +252,28 @@ bool _Semaphore_Seize( ); /** - * @brief Semaphore Translate Core Mutex Return Code + * @brief Semaphore Translate Core Mutex Return Code * - * This function returns a RTEMS status code based on the mutex - * status code specified. + * This function returns a RTEMS status code based on the mutex + * status code specified. * - * @param[in] the_mutex_status is the mutex status code to translate + * @param[in] the_mutex_status is the mutex status code to translate * - * @return translated RTEMS status code + * @retval translated RTEMS status code */ rtems_status_code _Semaphore_Translate_core_mutex_return_code ( uint32_t the_mutex_status ); /** - * @brief Semaphore Translate Core Semaphore Return Code + * @brief Semaphore Translate Core Semaphore Return Code * - * This function returns a RTEMS status code based on the semaphore - * status code specified. + * This function returns a RTEMS status code based on the semaphore + * status code specified. * - * @param[in] status is the semaphore status code to translate + * @param[in] the_mutex_status is the semaphore status code to translate * - * @return translated RTEMS status code + * @retval translated RTEMS status code */ rtems_status_code _Semaphore_Translate_core_semaphore_return_code ( uint32_t the_mutex_status diff --git a/cpukit/rtems/include/rtems/rtems/semmp.h b/cpukit/rtems/include/rtems/rtems/semmp.h index d592d33b3a..d52176de7d 100644 --- a/cpukit/rtems/include/rtems/rtems/semmp.h +++ b/cpukit/rtems/include/rtems/rtems/semmp.h @@ -1,16 +1,21 @@ /** * @file rtems/rtems/semmp.h * - * This include file contains all the constants and structures associated - * with the Multiprocessing Support in the Semaphore Manager. + * @defgroup ClassicSEM Semaphore MP Support + * + * @ingroup ClassicRTEMS + * @brief Semaphore Manager MP Support + * + * This include file contains all the constants and structures associated + * with the Multiprocessing Support in the Semaphore Manager. */ -/* COPYRIGHT (c) 1989-2008. - * On-Line Applications Research Corporation (OAR). +/* COPYRIGHT (c) 1989-2008. + * On-Line Applications Research Corporation (OAR). * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.com/license/LICENSE. + * The license and distribution terms for this file may be + * found in the file LICENSE in this distribution or at + * http://www.rtems.com/license/LICENSE. */ #ifndef _RTEMS_RTEMS_SEMMP_H @@ -142,12 +147,12 @@ Semaphore_MP_Packet *_Semaphore_MP_Get_packet ( void ); /** * @brief Semaphore Core Mutex MP Support * - * This function processes the global actions necessary for remote - * accesses to a global semaphore based on a core mutex. This function - * is called by the core. + * This function processes the global actions necessary for remote + * accesses to a global semaphore based on a core mutex. This function + * is called by the core. * - * @param[in] the_thread the remote thread the semaphore was surrendered to - * @param[in] id is the id of the surrendered semaphore + * @param[in] the_thread the remote thread the semaphore was surrendered to + * @param[in] id is the id of the surrendered semaphore */ void _Semaphore_Core_mutex_mp_support ( Thread_Control *the_thread, @@ -155,14 +160,14 @@ void _Semaphore_Core_mutex_mp_support ( ); /** - * @brief Semaphore Core MP Support + * @brief Semaphore Core MP Support * - * This function processes the global actions necessary for remote - * accesses to a global semaphore based on a core semaphore. This function - * is called by the core. + * This function processes the global actions necessary for remote + * accesses to a global semaphore based on a core semaphore. This function + * is called by the core. * - * @param[in] the_thread the remote thread the semaphore was surrendered to - * @param[in] id is the id of the surrendered semaphore + * @param[in] the_thread the remote thread the semaphore was surrendered to + * @param[in] id is the id of the surrendered semaphore */ void _Semaphore_Core_semaphore_mp_support ( Thread_Control *the_thread, diff --git a/cpukit/rtems/include/rtems/rtems/signal.h b/cpukit/rtems/include/rtems/rtems/signal.h index 6e242544a3..18f31b5ff5 100644 --- a/cpukit/rtems/include/rtems/rtems/signal.h +++ b/cpukit/rtems/include/rtems/rtems/signal.h @@ -1,22 +1,27 @@ /** * @file rtems/rtems/signal.h * - * This include file contains all the constants and structures associated - * with the Signal Manager. This manager provides capabilities required - * for asynchronous communication between tasks via signal sets. + * @defgroup ClassicSignal Signals * - * Directives provided are: + * @ingroup ClassicRTEMS + * @brief Signal Manager * - * + establish an asynchronous signal routine - * + send a signal set to a task + * This include file contains all the constants and structures associated + * with the Signal Manager. This manager provides capabilities required + * for asynchronous communication between tasks via signal sets. + * + * Directives provided are: + * + * + establish an asynchronous signal routine + * + send a signal set to a task */ -/* COPYRIGHT (c) 1989-2008. - * On-Line Applications Research Corporation (OAR). +/* COPYRIGHT (c) 1989-2008. + * On-Line Applications Research Corporation (OAR). * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.com/license/LICENSE. + * The license and distribution terms for this file may be + * found in the file LICENSE in this distribution or at + * http://www.rtems.com/license/LICENSE. */ #ifndef _RTEMS_RTEMS_SIGNAL_H @@ -50,18 +55,18 @@ extern "C" { void _Signal_Manager_initialization( void ); /** - * @brief RTEMS Catch Signal + * @brief RTEMS Catch Signal * - * This routine implements the rtems_signal_catch directive. This directive - * is used to establish asr_handler as the Asynchronous Signal Routine - * (RTEMS_ASR) for the calling task. The asr_handler will execute with a - * mode of mode_set. + * This routine implements the rtems_signal_catch directive. This directive + * is used to establish asr_handler as the Asynchronous Signal Routine + * (RTEMS_ASR) for the calling task. The asr_handler will execute with a + * mode of mode_set. * - * @param[in] asr_handler is the address of asynchronous signal routine (asr) - * ( NULL indicates asr is invalid ) - * @param[in] mode_set is the mode value for asr + * @param[in] asr_handler is the address of asynchronous signal routine (asr) + * ( NULL indicates asr is invalid ) + * @param[in] mode_set is the mode value for asr * - * @return RTEMS_SUCCESSFUL + * @retval RTEMS_SUCCESSFUL */ rtems_status_code rtems_signal_catch( rtems_asr_entry asr_handler, @@ -69,15 +74,15 @@ rtems_status_code rtems_signal_catch( ); /** - * @brief RTEMS Send Signal + * @brief RTEMS Send Signal * - * This routine implements the rtems_signal_send directive. This directive - * sends the signal_set to the task specified by ID. + * This routine implements the rtems_signal_send directive. This directive + * sends the signal_set to the task specified by ID. * - * @param[in] id is the thread thread id - * @param[in] signal_set is the signal set + * @param[in] id is the thread thread id + * @param[in] signal_set is the signal set * - * @return RTEMS_SUCCESSFUL if successful or error code if unsuccessful + * @retval RTEMS_SUCCESSFUL if successful or error code if unsuccessful */ rtems_status_code rtems_signal_send( rtems_id id, diff --git a/cpukit/rtems/include/rtems/rtems/signalmp.h b/cpukit/rtems/include/rtems/rtems/signalmp.h index 2b373a92ed..82a7e07ef8 100644 --- a/cpukit/rtems/include/rtems/rtems/signalmp.h +++ b/cpukit/rtems/include/rtems/rtems/signalmp.h @@ -1,16 +1,18 @@ /** * @file rtems/rtems/signalmp.h * - * This include file contains all the constants and structures associated - * with the Multiprocessing Support in the Signal Manager. + * @brief Signal MP Support + * + * This include file contains all the constants and structures associated + * with the Multiprocessing Support in the Signal Manager. */ -/* COPYRIGHT (c) 1989-2008. - * On-Line Applications Research Corporation (OAR). +/* COPYRIGHT (c) 1989-2008. + * On-Line Applications Research Corporation (OAR). * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.com/license/LICENSE. + * The license and distribution terms for this file may be + * found in the file LICENSE in this distribution or at + * http://www.rtems.com/license/LICENSE. */ #ifndef _RTEMS_RTEMS_SIGNALMP_H @@ -33,7 +35,7 @@ extern "C" { * * This encapsulates functionality which XXX */ -/**{*/ +/*{*/ /** * The following enumerated type defines the list of diff --git a/cpukit/rtems/include/rtems/rtems/smp.h b/cpukit/rtems/include/rtems/rtems/smp.h index cf2ae8e30b..e62084ce86 100644 --- a/cpukit/rtems/include/rtems/rtems/smp.h +++ b/cpukit/rtems/include/rtems/rtems/smp.h @@ -1,19 +1,21 @@ /** * @file rtems/rtems/smp.h * - * This include file provides the application interface - * to SMP information and services. + * @defgroup ClassicSMP Classic API SMP Services * - * Most of the SMP interface is hidden from the application - * and exists between the BSP and RTEMS. + * @ingroup ClassicRTEMS + * @brief SMP information and services. + * + * Most of the SMP interface is hidden from the application + * and exists between the BSP and RTEMS. */ -/* COPYRIGHT (c) 1989-2011. - * On-Line Applications Research Corporation (OAR). +/* COPYRIGHT (c) 1989-2011. + * On-Line Applications Research Corporation (OAR). * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.com/license/LICENSE. + * The license and distribution terms for this file may be + * found in the file LICENSE in this distribution or at + * http://www.rtems.com/license/LICENSE. */ #ifndef _RTEMS_RTEMS_SMP_H @@ -37,35 +39,35 @@ extern "C" { extern uint32_t rtems_configuration_smp_maximum_processors; /** - * @brief Obtain Number of Cores in System + * @brief Obtain Number of Cores in System * - * This method returns the number of CPU cores that are currently in - * the system. This will always be less than or equal to the number - * of maximum number of cores which were configured. + * This method returns the number of CPU cores that are currently in + * the system. This will always be less than or equal to the number + * of maximum number of cores which were configured. * - * @return This method returns the number of cores in this system. + * @retval This method returns the number of cores in this system. */ #define rtems_smp_get_number_of_processors() \ (_SMP_Processor_count) /** - * @brief Obtain Maximum Cores Configured + * @brief Obtain Maximum Cores Configured * - * This method returns the number of CPU cores that were configured - * in the system. The actual number of cores will always be less than - * or equal to the number of maximum number of cores which were configured. + * This method returns the number of CPU cores that were configured + * in the system. The actual number of cores will always be less than + * or equal to the number of maximum number of cores which were configured. * - * @return This method returns the number of cores configured. + * @retval This method returns the number of cores configured. */ #define rtems_configuration_get_smp_maximum_processors() \ (rtems_configuration_smp_maximum_processors) /** - * @brief Obtain Current Core Number + * @brief Obtain Current Core Number * - * This method returns the id of the current CPU core. + * This method returns the id of the current CPU core. * - * @return This method returns the id of the current CPU core. + * @retval This method returns the id of the current CPU core. */ #define rtems_smp_get_current_processor() \ bsp_smp_processor_id() diff --git a/cpukit/rtems/include/rtems/rtems/status.h b/cpukit/rtems/include/rtems/rtems/status.h index 98923a0d53..9732d290f0 100644 --- a/cpukit/rtems/include/rtems/rtems/status.h +++ b/cpukit/rtems/include/rtems/rtems/status.h @@ -1,18 +1,21 @@ /** * @file rtems/rtems/status.h * - * @brief Status Codes Returned from the Executive Directives + * @defgroup ClassicStatus Status Codes * - * This include file contains the status codes returned from the - * executive directives. + * @ingroup ClassicRTEMS + * @brief Status Codes Returned from Executive Directives + * + * This include file contains the status codes returned from the + * executive directives. */ -/* COPYRIGHT (c) 1989-2008. - * On-Line Applications Research Corporation (OAR). +/* COPYRIGHT (c) 1989-2008. + * On-Line Applications Research Corporation (OAR). * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.com/license/LICENSE. + * The license and distribution terms for this file may be + * found in the file LICENSE in this distribution or at + * http://www.rtems.com/license/LICENSE. */ #ifndef _RTEMS_RTEMS_STATUS_H diff --git a/cpukit/rtems/include/rtems/rtems/support.h b/cpukit/rtems/include/rtems/rtems/support.h index 30716de72f..c9fbbdc480 100644 --- a/cpukit/rtems/include/rtems/rtems/support.h +++ b/cpukit/rtems/include/rtems/rtems/support.h @@ -1,19 +1,18 @@ /** * @file * - * @ingroup ClassicRTEMS - * - * @ingroup ClassicRTEMSWorkspace + * @defgroup ClassicRTEMSWorkspace Workspace * + * @ingroup ClassicRTEMS * @brief Classic API support. */ -/* COPYRIGHT (c) 1989-2008. - * On-Line Applications Research Corporation (OAR). +/* COPYRIGHT (c) 1989-2008. + * On-Line Applications Research Corporation (OAR). * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.com/license/LICENSE. + * The license and distribution terms for this file may be + * found in the file LICENSE in this distribution or at + * http://www.rtems.com/license/LICENSE. */ #ifndef _RTEMS_RTEMS_SUPPORT_H @@ -27,9 +26,8 @@ extern "C" { /** * @addtogroup ClassicRTEMS - * - * @{ */ +/**@{**/ /** * @brief Returns the number of micro seconds for the milli seconds value @a _ms. @@ -58,9 +56,8 @@ extern "C" { * @ingroup ClassicRTEMS * * Workspace definitions. - * - * @{ */ +/**@{**/ /** * @brief Gets Workspace Information diff --git a/cpukit/rtems/include/rtems/rtems/taskmp.h b/cpukit/rtems/include/rtems/rtems/taskmp.h index 7bf4c1bf2e..01a283b2f5 100644 --- a/cpukit/rtems/include/rtems/rtems/taskmp.h +++ b/cpukit/rtems/include/rtems/rtems/taskmp.h @@ -1,16 +1,21 @@ /** * @file rtems/rtems/taskmp.h * - * This include file contains all the constants and structures associated - * with the multiprocessing support in the task manager. + * @defgroup ClassicTaskMP Task MP Support + * + * @ingroup ClassicRTEMS + * @brief Task Manager MP Support + * + * This include file contains all the constants and structures associated + * with the multiprocessing support in the task manager. */ -/* COPYRIGHT (c) 1989-2008. - * On-Line Applications Research Corporation (OAR). +/* COPYRIGHT (c) 1989-2008. + * On-Line Applications Research Corporation (OAR). * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.com/license/LICENSE. + * The license and distribution terms for this file may be + * found in the file LICENSE in this distribution or at + * http://www.rtems.com/license/LICENSE. */ #ifndef _RTEMS_RTEMS_TASKMP_H diff --git a/cpukit/rtems/include/rtems/rtems/tasks.h b/cpukit/rtems/include/rtems/rtems/tasks.h index 607f87ca57..3be3aebe7c 100644 --- a/cpukit/rtems/include/rtems/rtems/tasks.h +++ b/cpukit/rtems/include/rtems/rtems/tasks.h @@ -1,34 +1,39 @@ /** * @file rtems/rtems/tasks.h * - * This include file contains all constants and structures associated - * with RTEMS tasks. This manager provides a comprehensive set of directives - * to create, delete, and administer tasks. - * - * Directives provided are: - * - * - create a task - * - get an ID of a task - * - start a task - * - restart a task - * - delete a task - * - suspend a task - * - resume a task - * - set a task's priority - * - change the current task's mode - * - get a task notepad entry - * - set a task notepad entry - * - wake up after interval - * - wake up when specified + * @defgroup ClassicTasks Tasks + * + * @ingroup ClassicRTEMS + * @brief RTEMS Tasks + * + * This include file contains all constants and structures associated + * with RTEMS tasks. This manager provides a comprehensive set of directives + * to create, delete, and administer tasks. + * + * Directives provided are: + * + * - create a task + * - get an ID of a task + * - start a task + * - restart a task + * - delete a task + * - suspend a task + * - resume a task + * - set a task's priority + * - change the current task's mode + * - get a task notepad entry + * - set a task notepad entry + * - wake up after interval + * - wake up when specified */ /* - * COPYRIGHT (c) 1989-2011. - * On-Line Applications Research Corporation (OAR). + * COPYRIGHT (c) 1989-2011. + * On-Line Applications Research Corporation (OAR). * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.com/license/LICENSE. + * The license and distribution terms for this file may be + * found in the file LICENSE in this distribution or at + * http://www.rtems.com/license/LICENSE. */ #ifndef _RTEMS_RTEMS_TASKS_H @@ -249,24 +254,24 @@ extern void (*_RTEMS_tasks_Initialize_user_tasks_p)(void); void _RTEMS_tasks_Manager_initialization(void); /** - * @brief RTEMS Task Create + * @brief RTEMS Task Create * - * This routine implements the rtems_task_create directive. The task - * will have the name name. The attribute_set can be used to indicate - * that the task will be globally accessible or utilize floating point. - * The task's stack will be stack_size bytes. The task will begin - * execution with initial_priority and initial_modes. It returns the - * id of the created task in ID. + * This routine implements the rtems_task_create directive. The task + * will have the name name. The attribute_set can be used to indicate + * that the task will be globally accessible or utilize floating point. + * The task's stack will be stack_size bytes. The task will begin + * execution with initial_priority and initial_modes. It returns the + * id of the created task in ID. * - * @param[in] name is the user defined thread name - * @param[in] initial_priority is the thread priority - * @param[in] stack_size is the stack size in bytes - * @param[in] initial_modes is the initial thread mode - * @param[in] attribute_set is the thread attributes - * @param[in] id is the pointer to thread id + * @param[in] name is the user defined thread name + * @param[in] initial_priority is the thread priority + * @param[in] stack_size is the stack size in bytes + * @param[in] initial_modes is the initial thread mode + * @param[in] attribute_set is the thread attributes + * @param[in] id is the pointer to thread id * - * @return RTEMS_SUCCESSFUL if successful or error code if unsuccessful - * and *id thread id filled in + * @retval RTEMS_SUCCESSFUL if successful or error code if unsuccessful + * and *id thread id filled in */ rtems_status_code rtems_task_create( rtems_name name, @@ -278,24 +283,24 @@ rtems_status_code rtems_task_create( ); /** - * @brief RTEMS Task Name to Id + * @brief RTEMS Task Name to Id * - * This routine implements the rtems_task_ident directive. - * This directive returns the task ID associated with name. - * If more than one task is named name, then the task to - * which the ID belongs is arbitrary. node indicates the - * extent of the search for the ID of the task named name. - * The search can be limited to a particular node or allowed to - * encompass all nodes. + * This routine implements the rtems_task_ident directive. + * This directive returns the task ID associated with name. + * If more than one task is named name, then the task to + * which the ID belongs is arbitrary. node indicates the + * extent of the search for the ID of the task named name. + * The search can be limited to a particular node or allowed to + * encompass all nodes. * - * @param[in] name is the user defined thread name - * @param[in] node is(are) the node(s) to be searched - * @param[in] id is the pointer to thread id + * @param[in] name is the user defined thread name + * @param[in] node is(are) the node(s) to be searched + * @param[in] id is the pointer to thread id * - * @return This method returns RTEMS_SUCCESSFUL if there was not an - * error. Otherwise, a status code is returned indicating the - * source of the error. If successful, the id will - * be filled in with the thread id. + * @retval This method returns RTEMS_SUCCESSFUL if there was not an + * error. Otherwise, a status code is returned indicating the + * source of the error. If successful, the id will + * be filled in with the thread id. */ rtems_status_code rtems_task_ident( rtems_name name, @@ -304,35 +309,35 @@ rtems_status_code rtems_task_ident( ); /** - * @brief RTEMS Delete Task + * @brief RTEMS Delete Task * - * This routine implements the rtems_task_delete directive. The - * task indicated by ID is deleted. The executive halts execution - * of the thread and frees the thread control block. + * This routine implements the rtems_task_delete directive. The + * task indicated by ID is deleted. The executive halts execution + * of the thread and frees the thread control block. * - * @param[in] id is the thread id + * @param[in] id is the thread id * - * @return This method returns RTEMS_SUCCESSFUL if there was not an - * error and id is not the requesting thread. Status code is - * returned indicating the source of the error. Nothing - * is returned if id is the requesting thread (always succeeds). + * @retval This method returns RTEMS_SUCCESSFUL if there was not an + * error and id is not the requesting thread. Status code is + * returned indicating the source of the error. Nothing + * is returned if id is the requesting thread (always succeeds). */ rtems_status_code rtems_task_delete( rtems_id id ); /** - * @brief RTEMS Get Task Node + * @brief RTEMS Get Task Node * - * This routine implements the rtems_task_get_note directive. The - * value of the indicated notepad for the task associated with ID - * is returned in note. + * This routine implements the rtems_task_get_note directive. The + * value of the indicated notepad for the task associated with ID + * is returned in note. * - * @param[in] id is the thread id - * @param[in] notepad is the notepad number - * @param[out] note is the pointer to note + * @param[in] id is the thread id + * @param[in] notepad is the notepad number + * @param[out] note is the pointer to note * - * @return RTEMS_SUCCESSFUL if successful or error code if unsuccessful + * @retval RTEMS_SUCCESSFUL if successful or error code if unsuccessful */ rtems_status_code rtems_task_get_note( rtems_id id, @@ -341,19 +346,19 @@ rtems_status_code rtems_task_get_note( ); /** - * @brief RTEMS Set Task Note + * @brief RTEMS Set Task Note * - * This routine implements the rtems_task_set_note directive. The - * value of the indicated notepad for the task associated with ID - * is returned in note. + * This routine implements the rtems_task_set_note directive. The + * value of the indicated notepad for the task associated with ID + * is returned in note. * - * @param[in] id is the thread id - * @param[in] notepad is the notepad number - * @param[in] note is the note value + * @param[in] id is the thread id + * @param[in] notepad is the notepad number + * @param[in] note is the note value * - * @return This method returns RTEMS_SUCCESSFUL if there was not an - * error. Otherwise, a status code is returned indicating the - * source of the error. + * @return This method returns RTEMS_SUCCESSFUL if there was not an + * error. Otherwise, a status code is returned indicating the + * source of the error. */ rtems_status_code rtems_task_set_note( rtems_id id, @@ -362,19 +367,19 @@ rtems_status_code rtems_task_set_note( ); /** - * @brief RTEMS Task Mode + * @brief RTEMS Task Mode * - * This routine implements the rtems_task_mode directive. The current - * values of the modes indicated by mask of the calling task are changed - * to that indicated in mode_set. The former mode of the task is - * returned in mode_set. + * This routine implements the rtems_task_mode directive. The current + * values of the modes indicated by mask of the calling task are changed + * to that indicated in mode_set. The former mode of the task is + * returned in mode_set. * - * @param[in] mode_set is the new mode - * @param[in] mask is the mask - * @param[in] previous_mode_set is the address of previous mode set + * @param[in] mode_set is the new mode + * @param[in] mask is the mask + * @param[in] previous_mode_set is the address of previous mode set * - * @return RTEMS_SUCCESSFUL and previous_mode_set filled in with the - * previous mode set + * @retval RTEMS_SUCCESSFUL and previous_mode_set filled in with the + * previous mode set */ rtems_status_code rtems_task_mode( rtems_mode mode_set, @@ -383,16 +388,16 @@ rtems_status_code rtems_task_mode( ); /** - * @brief RTEMS Task Restart + * @brief RTEMS Task Restart * - * This routine implements the rtems_task_restart directive. The - * task associated with ID is restarted at its initial entry - * point with the new argument. + * This routine implements the rtems_task_restart directive. The + * task associated with ID is restarted at its initial entry + * point with the new argument. * - * @param[in] id is the thread id - * @param[in] arg is the thread argument + * @param[in] id is the thread id + * @param[in] arg is the thread argument * - * @return RTEMS_SUCCESSFUL if successful or error code if unsuccessful + * @retval RTEMS_SUCCESSFUL if successful or error code if unsuccessful */ rtems_status_code rtems_task_restart( rtems_id id, @@ -400,52 +405,52 @@ rtems_status_code rtems_task_restart( ); /** - * @brief RTEMS Suspend Task + * @brief RTEMS Suspend Task * - * This routine implements the rtems_task_suspend directive. The - * SUSPENDED state is set for task associated with ID. Note that the - * suspended state can be in addition to other waiting states. + * This routine implements the rtems_task_suspend directive. The + * SUSPENDED state is set for task associated with ID. Note that the + * suspended state can be in addition to other waiting states. * - * @param[in] id is the thread id + * @param[in] id is the thread id * - * @return This method returns RTEMS_SUCCESSFUL if there was not an - * error. Otherwise, a status code is returned indicating the - * source of the error. + * @retval This method returns RTEMS_SUCCESSFUL if there was not an + * error. Otherwise, a status code is returned indicating the + * source of the error. */ rtems_status_code rtems_task_suspend( rtems_id id ); /** - * @brief RTEMS Resume Task + * @brief RTEMS Resume Task * - * This routine implements the rtems_task_resume Directive. The - * SUSPENDED state is cleared for task associated with ID. + * This routine implements the rtems_task_resume Directive. The + * SUSPENDED state is cleared for task associated with ID. * - * @param[in] id is the thread id + * @param[in] id is the thread id * - * @return This method returns RTEMS_SUCCESSFUL if there was not an - * error. Otherwise, a status code is returned indicating the - * source of the error. + * @retval This method returns RTEMS_SUCCESSFUL if there was not an + * error. Otherwise, a status code is returned indicating the + * source of the error. */ rtems_status_code rtems_task_resume( rtems_id id ); /** - * @brief RTEMS Set Task Priority + * @brief RTEMS Set Task Priority * - * This routine implements the rtems_task_set_priority directive. The - * current priority of the task associated with ID is set to - * new_priority. The former priority of that task is returned - * in old_priority. + * This routine implements the rtems_task_set_priority directive. The + * current priority of the task associated with ID is set to + * new_priority. The former priority of that task is returned + * in old_priority. * - * @param[in] id is the thread to extract - * @param[in] new_priority is the thread to extract - * @param[in] old_priority is the thread to extract + * @param[in] id is the thread to extract + * @param[in] new_priority is the thread to extract + * @param[in] old_priority is the thread to extract * - * @return RTEMS_SUCCESSFUL if successful or error code if unsuccessful and - * and *old_priority filled in with the previous previous priority + * @retval RTEMS_SUCCESSFUL if successful or error code if unsuccessful and + * and *old_priority filled in with the previous previous priority */ rtems_status_code rtems_task_set_priority( rtems_id id, @@ -469,29 +474,29 @@ rtems_status_code rtems_task_start( ); /** - * @brief RTEMS Task Wake When + * @brief RTEMS Task Wake When * - * This routine implements the rtems_task_wake_when directive. The - * calling task is blocked until the current time of day is - * equal to that indicated by time_buffer. + * This routine implements the rtems_task_wake_when directive. The + * calling task is blocked until the current time of day is + * equal to that indicated by time_buffer. * - * @param[in] time_buffer is the pointer to the time and date structure + * @param[in] time_buffer is the pointer to the time and date structure * - * @return RTEMS_SUCCESSFUL if successful or error code if unsuccessful + * @retval RTEMS_SUCCESSFUL if successful or error code if unsuccessful */ rtems_status_code rtems_task_wake_when( rtems_time_of_day *time_buffer ); /** - * @brief RTEMS Task Wake After + * @brief RTEMS Task Wake After * - * This routine implements the rtems_task_wake_after directive. The - * calling task is blocked until the indicated number of clock - * ticks have occurred. + * This routine implements the rtems_task_wake_after directive. The + * calling task is blocked until the indicated number of clock + * ticks have occurred. * - * @param[in] ticks is the number of ticks to wait - * @return RTEMS_SUCCESSFUL + * @param[in] ticks is the number of ticks to wait + * @retval RTEMS_SUCCESSFUL */ rtems_status_code rtems_task_wake_after( rtems_interval ticks diff --git a/cpukit/rtems/include/rtems/rtems/timer.h b/cpukit/rtems/include/rtems/rtems/timer.h index 29c9f092ec..f27f958d9a 100644 --- a/cpukit/rtems/include/rtems/rtems/timer.h +++ b/cpukit/rtems/include/rtems/rtems/timer.h @@ -1,38 +1,41 @@ /** * @file rtems/rtems/timer.h * - * @brief Constants, Structures, and Prototypes Associated with the Timer Manager - * - * This include file contains all the constants, structures, and - * prototypes associated with the Timer Manager. This manager provides - * facilities to configure, initiate, cancel, and delete timers which will - * fire at specified intervals of time. - * - * Directives provided are: - * - * - create a timer - * - get an ID of a timer - * - delete a timer - * - set timer to fire in context of clock tick - * - after a number of ticks have passed - * - when a specified date and time has been reached - * - initiate the timer server task - * - set timer to fire in context of the timer server task - * - after a number of ticks have passed - * - when a specified date and time has been reached - * - reset a timer - * - cancel a time + * @defgroup ClassicTimer Timers + * + * @ingroup ClassicRTEMS + * @brief Instantiate RTEMS Timer Data + * + * This include file contains all the constants, structures, and + * prototypes associated with the Timer Manager. This manager provides + * facilities to configure, initiate, cancel, and delete timers which will + * fire at specified intervals of time. + * + * Directives provided are: + * + * - create a timer + * - get an ID of a timer + * - delete a timer + * - set timer to fire in context of clock tick + * - after a number of ticks have passed + * - when a specified date and time has been reached + * - initiate the timer server task + * - set timer to fire in context of the timer server task + * - after a number of ticks have passed + * - when a specified date and time has been reached + * - reset a timer + * - cancel a time */ /* - * COPYRIGHT (c) 1989-2011. - * On-Line Applications Research Corporation (OAR). + * COPYRIGHT (c) 1989-2011. + * On-Line Applications Research Corporation (OAR). * - * Copyright (c) 2009 embedded brains GmbH. + * Copyright (c) 2009 embedded brains GmbH. * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.com/license/LICENSE. + * The license and distribution terms for this file may be + * found in the file LICENSE in this distribution or at + * http://www.rtems.com/license/LICENSE. */ #ifndef _RTEMS_RTEMS_TIMER_H @@ -231,16 +234,16 @@ RTEMS_TIMER_EXTERN Objects_Information _Timer_Information; void _Timer_Manager_initialization(void); /** - * @brief RTEMS Create Timer + * @brief RTEMS Create Timer * - * This routine implements the rtems_timer_create directive. The - * timer will have the name name. It returns the id of the - * created timer in ID. + * This routine implements the rtems_timer_create directive. The + * timer will have the name name. It returns the id of the + * created timer in ID. * - * @param[in] name is the timer name - * @param[out] id is the pointer to timer id + * @param[in] name is the timer name + * @param[out] id is the pointer to timer id * - * @return RTEMS_SUCCESSFUL if successful or error code if unsuccessful + * @retval RTEMS_SUCCESSFUL if successful or error code if unsuccessful */ rtems_status_code rtems_timer_create( rtems_name name, @@ -248,18 +251,18 @@ rtems_status_code rtems_timer_create( ); /** - * @brief RTEMS Timer Name to Id + * @brief RTEMS Timer Name to Id * - * This routine implements the rtems_timer_ident directive. - * This directive returns the timer ID associated with name. - * If more than one timer is named name, then the timer - * to which the ID belongs is arbitrary. + * This routine implements the rtems_timer_ident directive. + * This directive returns the timer ID associated with name. + * If more than one timer is named name, then the timer + * to which the ID belongs is arbitrary. * - * @param[in] name is the user defined message queue name - * @param[in] id is the pointer to timer id + * @param[in] name is the user defined message queue name + * @param[in] id is the pointer to timer id * - * @return RTEMS_SUCCESSFUL if successful or error code if unsuccessful and - * id filled with the message queue id + * @retval RTEMS_SUCCESSFUL if successful or error code if unsuccessful and + * id filled with the message queue id */ rtems_status_code rtems_timer_ident( rtems_name name, @@ -277,38 +280,38 @@ rtems_status_code rtems_timer_cancel( ); /** - * @brief RTEMS Delete Timer + * @brief RTEMS Delete Timer * - * This routine implements the rtems_timer_delete directive. The - * timer indicated by ID is deleted. + * This routine implements the rtems_timer_delete directive. The + * timer indicated by ID is deleted. * - * @param[in] id is the timer id + * @param[in] id is the timer id * - * @return This method returns RTEMS_SUCCESSFUL if there was not an - * error. Otherwise, a status code is returned indicating the - * source of the error. + * @retval This method returns RTEMS_SUCCESSFUL if there was not an + * error. Otherwise, a status code is returned indicating the + * source of the error. */ rtems_status_code rtems_timer_delete( rtems_id id ); /** - * @brief RTEMS Timer Fire After - * - * This routine implements the rtems_timer_fire_after directive. It - * initiates the timer associated with ID to fire in ticks clock ticks. - * When the timer fires, the routine will be invoked in the context - * of the rtems_clock_tick directive which is normally invoked as - * part of servicing a periodic interupt. - * - * @param[in] id is the timer id - * @param[in] ticks is the interval until routine is fired - * @param[in] routine is the routine to schedule - * @param[in] user_data is the passed as argument to routine when it is fired - * - * @return This method returns RTEMS_SUCCESSFUL if there was not an - * error. Otherwise, a status code is returned indicating the - * source of the error. + * @brief RTEMS Timer Fire After + * + * This routine implements the rtems_timer_fire_after directive. It + * initiates the timer associated with ID to fire in ticks clock ticks. + * When the timer fires, the routine will be invoked in the context + * of the rtems_clock_tick directive which is normally invoked as + * part of servicing a periodic interupt. + * + * @param[in] id is the timer id + * @param[in] ticks is the interval until routine is fired + * @param[in] routine is the routine to schedule + * @param[in] user_data is the passed as argument to routine when it is fired + * + * @retval This method returns RTEMS_SUCCESSFUL if there was not an + * error. Otherwise, a status code is returned indicating the + * source of the error. */ rtems_status_code rtems_timer_fire_after( rtems_id id, @@ -318,22 +321,22 @@ rtems_status_code rtems_timer_fire_after( ); /** - * @brief RTEMS Timer Server Fire After - * - * This routine implements the rtems_timer_server_fire_after directive. It - * initiates the timer associated with ID to fire in ticks clock - * ticks. When the timer fires, the routine will be invoked by the - * Timer Server in the context of a task NOT IN THE CONTEXT of the - * clock tick interrupt. - * - * @param[in] id is the timer id - * @param[in] ticks is the interval until routine is fired - * @param[in] routine is the routine to schedule - * @param[in] user_data is the passed as argument to routine when it is fired - * - * @return This method returns RTEMS_SUCCESSFUL if there was not an - * error. Otherwise, a status code is returned indicating the - * source of the error. + * @brief RTEMS Timer Server Fire After + * + * This routine implements the rtems_timer_server_fire_after directive. It + * initiates the timer associated with ID to fire in ticks clock + * ticks. When the timer fires, the routine will be invoked by the + * Timer Server in the context of a task NOT IN THE CONTEXT of the + * clock tick interrupt. + * + * @param[in] id is the timer id + * @param[in] ticks is the interval until routine is fired + * @param[in] routine is the routine to schedule + * @param[in] user_data is the passed as argument to routine when it is fired + * + * @retval This method returns RTEMS_SUCCESSFUL if there was not an + * error. Otherwise, a status code is returned indicating the + * source of the error. */ rtems_status_code rtems_timer_server_fire_after( rtems_id id, @@ -343,22 +346,22 @@ rtems_status_code rtems_timer_server_fire_after( ); /** - * @brief RTEMS Timer Fire When - * - * This routine implements the rtems_timer_fire_when directive. It - * initiates the timer associated with ID to fire at wall_time - * When the timer fires, the routine will be invoked in the context - * of the rtems_clock_tick directive which is normally invoked as - * part of servicing a periodic interupt. - * - * @param[in] id is the timer id - * @param[in] wall_time is the time of day to fire timer - * @param[in] routine is the routine to schedule - * @param[in] user_data is the passed as argument to routine when it is fired - * - * @return This method returns RTEMS_SUCCESSFUL if there was not an - * error. Otherwise, a status code is returned indicating the - * source of the error. + * @brief RTEMS Timer Fire When + * + * This routine implements the rtems_timer_fire_when directive. It + * initiates the timer associated with ID to fire at wall_time + * When the timer fires, the routine will be invoked in the context + * of the rtems_clock_tick directive which is normally invoked as + * part of servicing a periodic interupt. + * + * @param[in] id is the timer id + * @param[in] wall_time is the time of day to fire timer + * @param[in] routine is the routine to schedule + * @param[in] user_data is the passed as argument to routine when it is fired + * + * @retval This method returns RTEMS_SUCCESSFUL if there was not an + * error. Otherwise, a status code is returned indicating the + * source of the error. */ rtems_status_code rtems_timer_fire_when( rtems_id id, @@ -435,16 +438,16 @@ typedef struct { } rtems_timer_information; /** - * @brief RTEMS Get Timer Information + * @brief RTEMS Get Timer Information * - * This routine implements the rtems_timer_get_information directive. - * This directive returns information about the timer. + * This routine implements the rtems_timer_get_information directive. + * This directive returns information about the timer. * - * @param[in] id is the timer id - * @param[in] the_info is the pointer to timer information block + * @param[in] id is the timer id + * @param[in] the_info is the pointer to timer information block * - * @return RTEMS_SUCCESSFUL if successful or error code if unsuccessful and - * *the_info region information block filled in + * @retval RTEMS_SUCCESSFUL if successful or error code if unsuccessful and + * *the_info region information block filled in */ rtems_status_code rtems_timer_get_information( rtems_id id, diff --git a/cpukit/rtems/include/rtems/rtems/types.h b/cpukit/rtems/include/rtems/rtems/types.h index 52afa2611a..f9861aab8e 100644 --- a/cpukit/rtems/include/rtems/rtems/types.h +++ b/cpukit/rtems/include/rtems/rtems/types.h @@ -1,17 +1,18 @@ /** * @file * - * @ingroup ClassicRTEMS + * @defgroup ClassicTypes Types * - * @brief Types used by the Classic API. + * @ingroup ClassicRTEMS + * @brief Types used by Classic API. */ -/* COPYRIGHT (c) 1989-2009. - * On-Line Applications Research Corporation (OAR). +/* COPYRIGHT (c) 1989-2009. + * On-Line Applications Research Corporation (OAR). * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.com/license/LICENSE. + * The license and distribution terms for this file may be + * found in the file LICENSE in this distribution or at + * http://www.rtems.com/license/LICENSE. */ #ifndef _RTEMS_RTEMS_TYPES_H @@ -39,9 +40,8 @@ extern "C" { /** * @addtogroup ClassicRTEMS - * - * @{ */ +/**@{**/ #ifdef RTEMS_DEPRECATED_TYPES /** diff --git a/cpukit/rtems/inline/rtems/rtems/asr.inl b/cpukit/rtems/inline/rtems/rtems/asr.inl index 3aabaaae5b..9f42120018 100644 --- a/cpukit/rtems/inline/rtems/rtems/asr.inl +++ b/cpukit/rtems/inline/rtems/rtems/asr.inl @@ -1,16 +1,21 @@ /** * @file rtems/rtems/asr.inl * - * This include file contains the implemenation of all routines - * associated with the asynchronous signal handler which are inlined. + * @defgroup ClassicASR ASR Support + * + * @ingroup ClassicRTEMS + * @brief Asynchronous Signal Handler + * + * This include file contains the implemenation of all routines + * associated with the asynchronous signal handler which are inlined. */ -/* COPYRIGHT (c) 1989-2008. - * On-Line Applications Research Corporation (OAR). +/* COPYRIGHT (c) 1989-2008. + * On-Line Applications Research Corporation (OAR). * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.com/license/LICENSE. + * The license and distribution terms for this file may be + * found in the file LICENSE in this distribution or at + * http://www.rtems.com/license/LICENSE. */ #ifndef _RTEMS_RTEMS_ASR_H diff --git a/cpukit/rtems/inline/rtems/rtems/attr.inl b/cpukit/rtems/inline/rtems/rtems/attr.inl index 75d62ad601..126259a067 100644 --- a/cpukit/rtems/inline/rtems/rtems/attr.inl +++ b/cpukit/rtems/inline/rtems/rtems/attr.inl @@ -29,7 +29,7 @@ */ /** - * @brief Attributes_Set + * @brief Sets the requested new_attributes in the attribute_set passed in. * * This function sets the requested new_attributes in the attribute_set * passed in. The result is returned to the user. @@ -43,7 +43,8 @@ RTEMS_INLINE_ROUTINE rtems_attribute _Attributes_Set ( } /** - * @brief Attributes_Clear + * @brief Clears the requested new_attributes in the attribute_set + * passed in. * * This function clears the requested new_attributes in the attribute_set * passed in. The result is returned to the user. @@ -57,7 +58,8 @@ RTEMS_INLINE_ROUTINE rtems_attribute _Attributes_Clear ( } /** - * @brief Attributes_Is_floating_point + * @brief Checks if the floating point attribute is + * enabled in the attribute_set. * * This function returns TRUE if the floating point attribute is * enabled in the attribute_set and FALSE otherwise. @@ -71,7 +73,8 @@ RTEMS_INLINE_ROUTINE bool _Attributes_Is_floating_point( #if defined(RTEMS_MULTIPROCESSING) /** - * @brief Attributes_Is_global + * @brief Checks if the global object attribute is enabled in + * the attribute_set. * * This function returns TRUE if the global object attribute is * enabled in the attribute_set and FALSE otherwise. @@ -85,7 +88,7 @@ RTEMS_INLINE_ROUTINE bool _Attributes_Is_global( #endif /** - * @brief Attributes_Is_priority + * @brief Checks if the priority attribute is enabled in the attribute_set. * * This function returns TRUE if the priority attribute is * enabled in the attribute_set and FALSE otherwise. @@ -98,7 +101,8 @@ RTEMS_INLINE_ROUTINE bool _Attributes_Is_priority( } /** - * @brief Attributes_Is_binary_semaphore + * @brief Checks if the binary semaphore attribute is + * enabled in the attribute_set. * * This function returns TRUE if the binary semaphore attribute is * enabled in the attribute_set and FALSE otherwise. @@ -111,21 +115,23 @@ RTEMS_INLINE_ROUTINE bool _Attributes_Is_binary_semaphore( } /** - * @brief Attributes_Is_simple_binary_semaphore + * @brief Checks if the simple binary semaphore attribute is + * enabled in the attribute_set * * This function returns TRUE if the simple binary semaphore attribute is * enabled in the attribute_set and FALSE otherwise. */ RTEMS_INLINE_ROUTINE bool _Attributes_Is_simple_binary_semaphore( rtems_attribute attribute_set -) +) { return ((attribute_set & RTEMS_SEMAPHORE_CLASS) == RTEMS_SIMPLE_BINARY_SEMAPHORE); -} +} /** - * @brief Attributes_Is_counting_semaphore + * @brief Checks if the counting semaphore attribute is + * enabled in the attribute_set * * This function returns TRUE if the counting semaphore attribute is * enabled in the attribute_set and FALSE otherwise. @@ -138,7 +144,8 @@ RTEMS_INLINE_ROUTINE bool _Attributes_Is_counting_semaphore( } /** - * @brief Attributes_Is_inherit_priority + * @brief Checks if the priority inheritance attribute + * is enabled in the attribute_set * * This function returns TRUE if the priority inheritance attribute * is enabled in the attribute_set and FALSE otherwise. @@ -151,7 +158,8 @@ RTEMS_INLINE_ROUTINE bool _Attributes_Is_inherit_priority( } /** - * @brief Attributes_Is_priority_ceiling + * @brief Checks if the priority ceiling attribute + * is enabled in the attribute_set * * This function returns TRUE if the priority ceiling attribute * is enabled in the attribute_set and FALSE otherwise. @@ -164,7 +172,8 @@ RTEMS_INLINE_ROUTINE bool _Attributes_Is_priority_ceiling( } /** - * @brief Attributes_Is_barrier_automatic + * @brief Checks if the barrier automatic release + * attribute is enabled in the attribute_set * * This function returns TRUE if the barrier automatic release * attribute is enabled in the attribute_set and FALSE otherwise. @@ -177,7 +186,8 @@ RTEMS_INLINE_ROUTINE bool _Attributes_Is_barrier_automatic( } /** - * @brief Attributes_Is_system_task + * @brief Checks if the system task attribute + * is enabled in the attribute_set. * * This function returns TRUE if the system task attribute * is enabled in the attribute_set and FALSE otherwise. diff --git a/cpukit/rtems/inline/rtems/rtems/barrier.inl b/cpukit/rtems/inline/rtems/rtems/barrier.inl index 08508b9665..0d0ee4cf88 100644 --- a/cpukit/rtems/inline/rtems/rtems/barrier.inl +++ b/cpukit/rtems/inline/rtems/rtems/barrier.inl @@ -1,17 +1,22 @@ /** * @file rtems/rtems/barrier.inl * + * @defgroup ClassicBarrier Barriers + * + * @ingroup ClassicRTEMS + * @brief Inline Implementation from Barrier Manager + * * This file contains the static inlin implementation of the inlined * routines from the Barrier Manager. */ /* - * COPYRIGHT (c) 1989-2008. - * On-Line Applications Research Corporation (OAR). + * COPYRIGHT (c) 1989-2008. + * On-Line Applications Research Corporation (OAR). * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.com/license/LICENSE. + * The license and distribution terms for this file may be + * found in the file LICENSE in this distribution or at + * http://www.rtems.com/license/LICENSE. */ #ifndef _RTEMS_RTEMS_BARRIER_H diff --git a/cpukit/rtems/inline/rtems/rtems/dpmem.inl b/cpukit/rtems/inline/rtems/rtems/dpmem.inl index c445603a9d..19a4addbca 100644 --- a/cpukit/rtems/inline/rtems/rtems/dpmem.inl +++ b/cpukit/rtems/inline/rtems/rtems/dpmem.inl @@ -26,7 +26,8 @@ */ /** - * @brief Dual_ported_memory_Allocate + * @brief Allocates a port control block from the inactive chain + * of free port control blocks. * * This routine allocates a port control block from the inactive chain * of free port control blocks. @@ -39,7 +40,8 @@ RTEMS_INLINE_ROUTINE Dual_ported_memory_Control } /** - * @brief Dual_ported_memory_Free + * @brief Frees a port control block to the inactive chain + * of free port control blocks. * * This routine frees a port control block to the inactive chain * of free port control blocks. @@ -52,7 +54,7 @@ RTEMS_INLINE_ROUTINE void _Dual_ported_memory_Free ( } /** - * @brief Dual_ported_memory_Get + * @brief Maps port IDs to port control blocks. * * This function maps port IDs to port control blocks. If ID * corresponds to a local port, then it returns the_port control @@ -71,7 +73,7 @@ RTEMS_INLINE_ROUTINE Dual_ported_memory_Control *_Dual_ported_memory_Get ( } /** - * @brief Dual_ported_memory_Is_null + * @brief Checks if the_port is NULL. * * This function returns true if the_port is NULL and false otherwise. */ diff --git a/cpukit/rtems/inline/rtems/rtems/eventset.inl b/cpukit/rtems/inline/rtems/rtems/eventset.inl index 22919eaff5..ee9447caa2 100644 --- a/cpukit/rtems/inline/rtems/rtems/eventset.inl +++ b/cpukit/rtems/inline/rtems/rtems/eventset.inl @@ -27,7 +27,7 @@ */ /** - * @brief Event_sets_Is_empty + * @brief Checks if on events are posted in the event_set. * * This function returns TRUE if on events are posted in the event_set, * and FALSE otherwise. @@ -40,7 +40,7 @@ RTEMS_INLINE_ROUTINE bool _Event_sets_Is_empty( } /** - * @brief Event_sets_Post + * @brief Posts the given new_events into the event_set passed in. * * This routine posts the given new_events into the event_set * passed in. The result is returned to the user in event_set. @@ -54,7 +54,7 @@ RTEMS_INLINE_ROUTINE void _Event_sets_Post( } /** - * @brief Event_sets_Get + * @brief Returns the events in event_condition that are set in event_set. * * This function returns the events in event_condition which are * set in event_set. @@ -68,7 +68,7 @@ RTEMS_INLINE_ROUTINE rtems_event_set _Event_sets_Get( } /** - * @brief Event_sets_Clear + * @brief Removes the events in mask from the event_set passed in. * * This function removes the events in mask from the event_set * passed in. The result is returned to the user in event_set. diff --git a/cpukit/rtems/inline/rtems/rtems/message.inl b/cpukit/rtems/inline/rtems/rtems/message.inl index 06a596ecc7..16c15c75a9 100644 --- a/cpukit/rtems/inline/rtems/rtems/message.inl +++ b/cpukit/rtems/inline/rtems/rtems/message.inl @@ -28,7 +28,7 @@ */ /** - * @brief Message_queue_Is_null + * @brief Check whether message queue is null. * * This function places the_message at the rear of the outstanding * messages on the_message_queue. @@ -42,7 +42,8 @@ RTEMS_INLINE_ROUTINE bool _Message_queue_Is_null ( /** - * @brief Message_queue_Free + * @brief Deallocates a message queue control block into + * the inactive chain of free message queue control blocks. * * This routine deallocates a message queue control block into * the inactive chain of free message queue control blocks. @@ -55,7 +56,7 @@ RTEMS_INLINE_ROUTINE void _Message_queue_Free ( } /** - * @brief Message_queue_Get + * @brief Maps message queue IDs to message queue control blocks. * * This function maps message queue IDs to message queue control * blocks. If ID corresponds to a local message queue, then it diff --git a/cpukit/rtems/inline/rtems/rtems/modes.inl b/cpukit/rtems/inline/rtems/rtems/modes.inl index d1ad842c54..034032154e 100644 --- a/cpukit/rtems/inline/rtems/rtems/modes.inl +++ b/cpukit/rtems/inline/rtems/rtems/modes.inl @@ -26,7 +26,7 @@ */ /** - * @brief Modes_Mask_changed + * @brief Checks if any of the mode flags in mask are set in mode_set. * * This function returns TRUE if any of the mode flags in mask * are set in mode_set, and FALSE otherwise. @@ -40,7 +40,7 @@ RTEMS_INLINE_ROUTINE bool _Modes_Mask_changed ( } /** - * @brief Modes_Is_asr_disabled + * @brief Checks if mode_set says that Asynchronous Signal Processing is disabled. * * This function returns TRUE if mode_set indicates that Asynchronous * Signal Processing is disabled, and FALSE otherwise. @@ -53,7 +53,7 @@ RTEMS_INLINE_ROUTINE bool _Modes_Is_asr_disabled ( } /** - * @brief Modes_Is_preempt + * @brief Checks if mode_set indicates that preemption is enabled. * * This function returns TRUE if mode_set indicates that preemption * is enabled, and FALSE otherwise. @@ -66,7 +66,7 @@ RTEMS_INLINE_ROUTINE bool _Modes_Is_preempt ( } /** - * @brief Modes_Is_timeslice + * @brief Checks if mode_set indicates that timeslicing is enabled. * * This function returns TRUE if mode_set indicates that timeslicing * is enabled, and FALSE otherwise. @@ -79,7 +79,7 @@ RTEMS_INLINE_ROUTINE bool _Modes_Is_timeslice ( } /** - * @brief Modes_Get_interrupt_level + * @brief Gets the interrupt level portion of the mode_set. * * This function returns the interrupt level portion of the mode_set. */ @@ -91,7 +91,7 @@ RTEMS_INLINE_ROUTINE ISR_Level _Modes_Get_interrupt_level ( } /** - * @brief Modes_Set_interrupt_level + * @brief Sets the current interrupt level to that specified in the mode_set. * * This routine sets the current interrupt level to that specified * in the mode_set. @@ -104,7 +104,8 @@ RTEMS_INLINE_ROUTINE void _Modes_Set_interrupt_level ( } /** - * @brief Modes_Change + * @brief Changes the modes in old_mode_set indicated by + * mask to the requested values in new_mode_set. * * This routine changes the modes in old_mode_set indicated by * mask to the requested values in new_mode_set. The resulting diff --git a/cpukit/rtems/inline/rtems/rtems/options.inl b/cpukit/rtems/inline/rtems/rtems/options.inl index 4341b14599..c3c0a5bf9e 100644 --- a/cpukit/rtems/inline/rtems/rtems/options.inl +++ b/cpukit/rtems/inline/rtems/rtems/options.inl @@ -28,7 +28,7 @@ */ /** - * @brief Options_Is_no_wait + * @brief Checks if the RTEMS_NO_WAIT option is enabled in option_set. * * This function returns TRUE if the RTEMS_NO_WAIT option is enabled in * option_set, and FALSE otherwise. @@ -41,7 +41,7 @@ RTEMS_INLINE_ROUTINE bool _Options_Is_no_wait ( } /** - * @brief Options_Is_any + * @brief Checks if the RTEMS_EVENT_ANY option is enabled in OPTION_SET. * * This function returns TRUE if the RTEMS_EVENT_ANY option is enabled in * OPTION_SET, and FALSE otherwise. diff --git a/cpukit/rtems/inline/rtems/rtems/part.inl b/cpukit/rtems/inline/rtems/rtems/part.inl index 6f921a900e..355ed49377 100644 --- a/cpukit/rtems/inline/rtems/rtems/part.inl +++ b/cpukit/rtems/inline/rtems/rtems/part.inl @@ -26,7 +26,7 @@ */ /** - * @brief Partition_Allocate_buffer + * @brief Allocate a buffer from the_partition. * * This function attempts to allocate a buffer from the_partition. * If successful, it returns the address of the allocated buffer. @@ -40,7 +40,7 @@ RTEMS_INLINE_ROUTINE void *_Partition_Allocate_buffer ( } /** - * @brief Partition_Free_buffer + * @brief Frees the_buffer to the_partition. * * This routine frees the_buffer to the_partition. */ @@ -53,7 +53,7 @@ RTEMS_INLINE_ROUTINE void _Partition_Free_buffer ( } /** - * @brief Partition_Is_buffer_on_boundary + * @brief Checks whether is on a valid buffer boundary for the_partition. * * This function returns TRUE if the_buffer is on a valid buffer * boundary for the_partition, and FALSE otherwise. @@ -74,7 +74,7 @@ RTEMS_INLINE_ROUTINE bool _Partition_Is_buffer_on_boundary ( } /** - * @brief Partition_Is_buffer_valid + * @brief Checks whether the_buffer is a valid buffer from the_partition. * * This function returns TRUE if the_buffer is a valid buffer from * the_partition, otherwise FALSE is returned. @@ -97,7 +97,7 @@ RTEMS_INLINE_ROUTINE bool _Partition_Is_buffer_valid ( } /** - * @brief Partition_Is_buffer_size_aligned + * @brief Checks if partition is buffer size aligned. * * This function returns TRUE if the use of the specified buffer_size * will result in the allocation of buffers whose first byte is @@ -111,7 +111,8 @@ RTEMS_INLINE_ROUTINE bool _Partition_Is_buffer_size_aligned ( } /** - * @brief Partition_Allocate + * @brief Allocates a partition control block from the + * inactive chain of free partition control blocks. * * This function allocates a partition control block from * the inactive chain of free partition control blocks. @@ -122,7 +123,8 @@ RTEMS_INLINE_ROUTINE Partition_Control *_Partition_Allocate ( void ) } /** - * @brief Partition_Free + * @brief Frees a partition control block to the + * inactive chain of free partition control blocks. * * This routine frees a partition control block to the * inactive chain of free partition control blocks. @@ -135,7 +137,7 @@ RTEMS_INLINE_ROUTINE void _Partition_Free ( } /** - * @brief Partition_Get + * @brief Maps partition IDs to partition control blocks. * * This function maps partition IDs to partition control blocks. * If ID corresponds to a local partition, then it returns @@ -155,7 +157,7 @@ RTEMS_INLINE_ROUTINE Partition_Control *_Partition_Get ( } /** - * @brief Partition_Is_null + * @brief Checks if the_partition is NULL. * * This function returns TRUE if the_partition is NULL * and FALSE otherwise. diff --git a/cpukit/rtems/inline/rtems/rtems/ratemon.inl b/cpukit/rtems/inline/rtems/rtems/ratemon.inl index 6c40998809..30b0361451 100644 --- a/cpukit/rtems/inline/rtems/rtems/ratemon.inl +++ b/cpukit/rtems/inline/rtems/rtems/ratemon.inl @@ -26,7 +26,8 @@ */ /** - * @brief Rate_monotonic_Allocate + * @brief Allocates a period control block from + * the inactive chain of free period control blocks. * * This function allocates a period control block from * the inactive chain of free period control blocks. @@ -38,7 +39,8 @@ RTEMS_INLINE_ROUTINE Rate_monotonic_Control *_Rate_monotonic_Allocate( void ) } /** - * @brief Rate_monotonic_Free + * @brief Allocates a period control block from + * the inactive chain of free period control blocks. * * This routine allocates a period control block from * the inactive chain of free period control blocks. @@ -51,7 +53,7 @@ RTEMS_INLINE_ROUTINE void _Rate_monotonic_Free ( } /** - * @brief Rate_monotonic_Get + * @brief Maps period IDs to period control blocks. * * This function maps period IDs to period control blocks. * If ID corresponds to a local period, then it returns @@ -69,7 +71,7 @@ RTEMS_INLINE_ROUTINE Rate_monotonic_Control *_Rate_monotonic_Get ( } /** - * @brief Rate_monotonic_Is_active + * @brief Checks if the_period is in the ACTIVE state. * * This function returns TRUE if the_period is in the ACTIVE state, * and FALSE otherwise. @@ -82,7 +84,7 @@ RTEMS_INLINE_ROUTINE bool _Rate_monotonic_Is_active ( } /** - * @brief Rate_monotonic_Is_inactive + * @brief Checks if the_period is in the ACTIVE state. * * This function returns TRUE if the_period is in the ACTIVE state, * and FALSE otherwise. @@ -95,7 +97,7 @@ RTEMS_INLINE_ROUTINE bool _Rate_monotonic_Is_inactive ( } /** - * @brief Rate_monotonic_Is_expired + * @brief Checks if the_period is in the EXPIRED state. * * This function returns TRUE if the_period is in the EXPIRED state, * and FALSE otherwise. @@ -108,7 +110,7 @@ RTEMS_INLINE_ROUTINE bool _Rate_monotonic_Is_expired ( } /** - * @brief Rate_monotonic_Is_null + * @brief Checks if the_period is NULL. * * This function returns TRUE if the_period is NULL and FALSE otherwise. */ diff --git a/cpukit/rtems/inline/rtems/rtems/region.inl b/cpukit/rtems/inline/rtems/rtems/region.inl index 3319630dc9..30e482cdc0 100644 --- a/cpukit/rtems/inline/rtems/rtems/region.inl +++ b/cpukit/rtems/inline/rtems/rtems/region.inl @@ -1,16 +1,21 @@ /** * @file rtems/rtems/region.inl * - * This file contains the macro implementation of the inlined - * routines from the Region Manager. + * @addtogroup ClassicRegion + * + * @ingroup ClassicRTEMS + * @brief Macro Implementation from Region Manager + * + * This file contains the macro implementation of the inlined + * routines from the Region Manager. */ -/* COPYRIGHT (c) 1989-2008. - * On-Line Applications Research Corporation (OAR). +/* COPYRIGHT (c) 1989-2008. + * On-Line Applications Research Corporation (OAR). * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.com/license/LICENSE. + * The license and distribution terms for this file may be + * found in the file LICENSE in this distribution or at + * http://www.rtems.com/license/LICENSE. */ #ifndef _RTEMS_RTEMS_REGION_H diff --git a/cpukit/rtems/inline/rtems/rtems/sem.inl b/cpukit/rtems/inline/rtems/rtems/sem.inl index 7b6d0d928f..22699e67ba 100644 --- a/cpukit/rtems/inline/rtems/rtems/sem.inl +++ b/cpukit/rtems/inline/rtems/rtems/sem.inl @@ -26,7 +26,8 @@ */ /** - * @brief Semaphore_Allocate + * @brief Allocates a semaphore control block from + * the inactive chain of free semaphore control blocks. * * This function allocates a semaphore control block from * the inactive chain of free semaphore control blocks. @@ -37,7 +38,8 @@ RTEMS_INLINE_ROUTINE Semaphore_Control *_Semaphore_Allocate( void ) } /** - * @brief Semaphore_Free + * @brief Frees a semaphore control block to the + * inactive chain of free semaphore control blocks. * * This routine frees a semaphore control block to the * inactive chain of free semaphore control blocks. @@ -50,7 +52,7 @@ RTEMS_INLINE_ROUTINE void _Semaphore_Free ( } /** - * @brief Semaphore_Get + * @brief Maps semaphore IDs to semaphore control blocks. * * This function maps semaphore IDs to semaphore control blocks. * If ID corresponds to a local semaphore, then it returns @@ -70,7 +72,7 @@ RTEMS_INLINE_ROUTINE Semaphore_Control *_Semaphore_Get ( } /** - * @brief Semaphore_Get (Interrupts disabled) + * @brief Maps semaphore IDs to semaphore control blocks. * * This function maps semaphore IDs to semaphore control blocks. * If ID corresponds to a local semaphore, then it returns @@ -91,7 +93,7 @@ RTEMS_INLINE_ROUTINE Semaphore_Control *_Semaphore_Get_interrupt_disable ( } /** - * @brief Semaphore_Is_null + * @brief Checks if the_semaphore is NULL. * * This function returns TRUE if the_semaphore is NULL and FALSE otherwise. */ diff --git a/cpukit/rtems/inline/rtems/rtems/status.inl b/cpukit/rtems/inline/rtems/rtems/status.inl index 1ad22fdfa7..caeb03da88 100644 --- a/cpukit/rtems/inline/rtems/rtems/status.inl +++ b/cpukit/rtems/inline/rtems/rtems/status.inl @@ -28,7 +28,7 @@ */ /** - * @brief rtems_is_status_successful + * @brief Checks if the status code is equal to RTEMS_SUCCESSFUL. * * This function returns TRUE if the status code is equal to RTEMS_SUCCESSFUL, * and FALSE otherwise. @@ -41,7 +41,7 @@ RTEMS_INLINE_ROUTINE bool rtems_is_status_successful( } /** - * @brief rtems_are_statuses_equal + * @brief Checks if the status code1 is equal to code2. * * This function returns TRUE if the status code1 is equal to code2, * and FALSE otherwise. diff --git a/cpukit/rtems/inline/rtems/rtems/support.inl b/cpukit/rtems/inline/rtems/rtems/support.inl index 117f9a9f0f..a302c45c0b 100644 --- a/cpukit/rtems/inline/rtems/rtems/support.inl +++ b/cpukit/rtems/inline/rtems/rtems/support.inl @@ -23,9 +23,8 @@ /** * @addtogroup ClassicRTEMS - * - * @{ */ +/**@{**/ /** * @brief Returns @c true if the name is valid, and @c false otherwise. diff --git a/cpukit/rtems/inline/rtems/rtems/tasks.inl b/cpukit/rtems/inline/rtems/rtems/tasks.inl index 193b0ad79c..3bf82121d7 100644 --- a/cpukit/rtems/inline/rtems/rtems/tasks.inl +++ b/cpukit/rtems/inline/rtems/rtems/tasks.inl @@ -26,7 +26,7 @@ */ /** - * @brief RTEMS_tasks_Allocate + * @brief Allocates a task control block. * * This function allocates a task control block from * the inactive chain of free task control blocks. @@ -37,7 +37,7 @@ RTEMS_INLINE_ROUTINE Thread_Control *_RTEMS_tasks_Allocate( void ) } /** - * @brief RTEMS_tasks_Free + * @brief Frees a task control block. * * This routine frees a task control block to the * inactive chain of free task control blocks. @@ -46,14 +46,14 @@ RTEMS_INLINE_ROUTINE void _RTEMS_tasks_Free ( Thread_Control *the_task ) { - _Objects_Free( + _Objects_Free( _Objects_Get_information_id( the_task->Object.id ), &the_task->Object ); } /** - * @brief RTEMS_tasks_Priority_to_Core + * @brief Converts an RTEMS API priority into a core priority. * * This function converts an RTEMS API priority into a core priority. */ @@ -65,7 +65,7 @@ RTEMS_INLINE_ROUTINE Priority_Control _RTEMS_tasks_Priority_to_Core( } /** - * @brief RTEMS_tasks_Priority_is_valid + * @brief Checks whether the priority is a valid user task. * * This function returns TRUE if the_priority is a valid user task priority * and FALSE otherwise. diff --git a/cpukit/rtems/inline/rtems/rtems/timer.inl b/cpukit/rtems/inline/rtems/rtems/timer.inl index 73f5221a86..f4067ae09a 100644 --- a/cpukit/rtems/inline/rtems/rtems/timer.inl +++ b/cpukit/rtems/inline/rtems/rtems/timer.inl @@ -1,17 +1,22 @@ /** * @file rtems/rtems/timer.inl * + * @defgroup ClassicTimer Timers + * + * @ingroup ClassicRTEMS + * @brief Inline Implementation from Timer Manager + * * This file contains the static inline implementation of the inlined routines * from the Timer Manager. */ /* - * COPYRIGHT (c) 1989-2011. - * On-Line Applications Research Corporation (OAR). + * COPYRIGHT (c) 1989-2011. + * On-Line Applications Research Corporation (OAR). * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.com/license/LICENSE. + * The license and distribution terms for this file may be + * found in the file LICENSE in this distribution or at + * http://www.rtems.com/license/LICENSE. */ #ifndef _RTEMS_RTEMS_TIMER_H diff --git a/cpukit/rtems/mainpage.h b/cpukit/rtems/mainpage.h index 5aee1ccc46..b772b37892 100644 --- a/cpukit/rtems/mainpage.h +++ b/cpukit/rtems/mainpage.h @@ -391,11 +391,10 @@ * of RTEMS' concepts and features are interrelated. Experienced RTEMS users * will find that the manual organization facilitates its use as a reference * document. - * */ /** - * @addtogroup ClassicRTEMS + * @addtogroup ClassicAPI * * The facilities provided by RTEMS are built upon a foundation of very * powerful concepts. These concepts must be understood before the application diff --git a/cpukit/rtems/src/eventsurrender.c b/cpukit/rtems/src/eventsurrender.c index 05b8481a86..bfa29c425a 100644 --- a/cpukit/rtems/src/eventsurrender.c +++ b/cpukit/rtems/src/eventsurrender.c @@ -39,27 +39,28 @@ void _Event_Surrender( _ISR_Disable( level ); _Event_sets_Post( event_in, &event->pending_events ); pending_events = event->pending_events; - event_condition = the_thread->Wait.count; - - seized_events = _Event_sets_Get( pending_events, event_condition ); /* - * No events were seized in this operation + * At this point the event condition is a speculative quantity. Later state + * checks will show if the thread actually waits for an event. */ - if ( _Event_sets_Is_empty( seized_events ) ) { - _ISR_Enable( level ); - return; - } + event_condition = the_thread->Wait.count; - /* - * If we are in an ISR and sending to the current thread, then - * we have a critical section issue to deal with. - */ - if ( _ISR_Is_in_progress() && - _Thread_Is_executing( the_thread ) && - ((*sync_state == THREAD_BLOCKING_OPERATION_TIMEOUT) || - (*sync_state == THREAD_BLOCKING_OPERATION_NOTHING_HAPPENED)) ) { - if ( seized_events == event_condition || _Options_Is_any(option_set) ) { + seized_events = _Event_sets_Get( pending_events, event_condition ); + + if ( + !_Event_sets_Is_empty( seized_events ) + && ( seized_events == event_condition || _Options_Is_any( option_set ) ) + ) { + /* + * If we are sending to the executing thread, then we have a critical + * section issue to deal with. The entity sending to the executing thread + * can be either the executing thread or an ISR. In case it is the + * executing thread, then the blocking operation state is not equal to + * THREAD_BLOCKING_OPERATION_NOTHING_HAPPENED. + */ + if ( _Thread_Is_executing( the_thread ) && + *sync_state == THREAD_BLOCKING_OPERATION_NOTHING_HAPPENED ) { event->pending_events = _Event_sets_Clear( pending_events, seized_events @@ -67,16 +68,7 @@ void _Event_Surrender( the_thread->Wait.count = 0; *(rtems_event_set *)the_thread->Wait.return_argument = seized_events; *sync_state = THREAD_BLOCKING_OPERATION_SATISFIED; - } - _ISR_Enable( level ); - return; - } - - /* - * Otherwise, this is a normal send to another thread - */ - if ( _States_Are_set( the_thread->current_state, wait_state ) ) { - if ( seized_events == event_condition || _Options_Is_any( option_set ) ) { + } else if ( _States_Are_set( the_thread->current_state, wait_state ) ) { event->pending_events = _Event_sets_Clear( pending_events, seized_events diff --git a/cpukit/rtems/src/eventtimeout.c b/cpukit/rtems/src/eventtimeout.c index 58dee84b1b..31eb04311e 100644 --- a/cpukit/rtems/src/eventtimeout.c +++ b/cpukit/rtems/src/eventtimeout.c @@ -49,13 +49,18 @@ void _Event_Timeout( * a timeout is not allowed to occur. */ _ISR_Disable( level ); - #if defined(RTEMS_DEBUG) - if ( !the_thread->Wait.count ) { /* verify thread is waiting */ - _Thread_Unnest_dispatch(); - _ISR_Enable( level ); - return; - } - #endif + /* + * Verify that the thread is still waiting for the event condition. + * This test is necessary to avoid state corruption if the timeout + * happens after the event condition is satisfied in + * _Event_Surrender(). A satisfied event condition is indicated with + * count set to zero. + */ + if ( !the_thread->Wait.count ) { + _Thread_Unnest_dispatch(); + _ISR_Enable( level ); + return; + } the_thread->Wait.count = 0; if ( _Thread_Is_executing( the_thread ) ) { diff --git a/cpukit/rtems/src/msgqcreate.c b/cpukit/rtems/src/msgqcreate.c index e65dcacfe6..8a7abfa313 100644 --- a/cpukit/rtems/src/msgqcreate.c +++ b/cpukit/rtems/src/msgqcreate.c @@ -48,7 +48,6 @@ rtems_status_code rtems_message_queue_create( CORE_message_queue_Attributes the_msgq_attributes; #if defined(RTEMS_MULTIPROCESSING) bool is_global; - size_t max_packet_payload_size; #endif if ( !rtems_is_name_valid( name ) ) @@ -76,11 +75,14 @@ rtems_status_code rtems_message_queue_create( * It seems reasonable to create a que with a large max size, * and then just send smaller msgs from remote (or all) nodes. */ + if ( is_global ) { + size_t max_packet_payload_size = _MPCI_table->maximum_packet_size + - MESSAGE_QUEUE_MP_PACKET_SIZE; - max_packet_payload_size = _MPCI_table->maximum_packet_size - - MESSAGE_QUEUE_MP_PACKET_SIZE; - if ( is_global && max_packet_payload_size < max_message_size ) - return RTEMS_INVALID_SIZE; + if ( max_message_size > max_packet_payload_size ) { + return RTEMS_INVALID_SIZE; + } + } #endif #endif |