rtems: Doxygen Clean Up Task #1

This commit is contained in:
Ayush Awasthi
2013-01-04 09:29:06 -06:00
committed by Jennifer Averett
parent d106ab3efd
commit 61b8e9f65c
20 changed files with 870 additions and 802 deletions

View File

@@ -1,17 +1,20 @@
/**
* @file
*
* @ingroup ClassicRTEMS
* @defgroup ClassicRTEMS RTEMS Classic API
*
* @brief Provides the Public Interface to the RTEMS Classic API
* @ingroup ClassicRTEMS
* @brief 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

View File

@@ -1,18 +1,21 @@
/**
* @file rtems/rtems/attr.h
*
* @brief Information about the Object Attributes Handler
* @defgroup ClassicAttributes Attributes
*
* This include file contains all information about the Object Attributes
* Handler.
* @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

View File

@@ -1,16 +1,21 @@
/**
* @file rtems/rtems/barriermp.h
*
* This include file contains all the constants and structures associated
* with the Multiprocessing Support in the Barrier Manager.
* @defgroup ClassicBarrierMP Barrier MP Support
*
* @ingroup ClassicMP
* @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

View File

@@ -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

View File

@@ -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

View File

@@ -1,30 +1,32 @@
/**
* @file rtems/rtems/dpmem.h
*
* @brief Constants and Structures Associated with the Dual Ported Memory
* Manager
* @defgroup ClassicDPMEM Dual Ported Memory
*
* 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.
* @ingroup ClassicRTEMS
* @brief Dual Ported Memory Manager
*
* Directives provided are:
* 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.
*
* - create a port
* - get ID of a port
* - delete a port
* - convert external to internal address
* - convert internal to external address
* 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
@@ -88,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.
* @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.
* 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
* @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.
* @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,
@@ -116,16 +118,16 @@ rtems_status_code rtems_port_create(
);
/**
* @brief RTEMS Port Name to Id
* @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.
* 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
* @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
* @retval RTEMS_SUCCESSFUL if successful or error code if unsuccessful
*/
rtems_status_code rtems_port_ident(
rtems_name name,
@@ -133,35 +135,35 @@ rtems_status_code rtems_port_ident(
);
/**
* @brief RTEMS Delete Port
* @brief RTEMS Delete Port
*
* This routine implements the rtems_port_delete directive. It deletes
* the port associated with ID.
* 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
* @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.
* @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
* @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.
* 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
* @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
* @retval RTEMS_SUCCESSFUL
*/
rtems_status_code rtems_port_external_to_internal(
rtems_id id,
@@ -170,20 +172,20 @@ rtems_status_code rtems_port_external_to_internal(
);
/**
* @brief RTEMS Port Internal to External
* @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.
* 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
* @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
* @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,

View File

@@ -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

View File

@@ -1,17 +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
@@ -53,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,
@@ -113,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,
@@ -133,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,
@@ -154,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
@@ -286,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,
@@ -336,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(

View File

@@ -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
* @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.
* 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
* @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
* @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,

View File

@@ -1,16 +1,21 @@
/**
* @file rtems/rtems/partmp.h
*
* This include file contains all the constants and structures associated
* with the Multiprocessing Support in the Partition Manager.
* @defgroup ClassicPartMP Partition MP Support
*
* @ingroup ClassicMP
* @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

View File

@@ -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] lenght 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,

View File

@@ -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
* @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.
* 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
* @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.
* @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
* @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.
* 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
* @param[in] id is the region id
* @param[in] segmet 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.
* @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,

View File

@@ -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

View File

@@ -1,15 +1,22 @@
/**
* @file rtems/rtems/rtemsapi.h
*
* @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

View File

@@ -1,42 +1,45 @@
/**
* @file rtems/rtems/sem.h
*
* @brief Constants and Structures Associated with the Semaphore Manager
* @defgroup ClassicSem Semaphores
*
* 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.
* @ingroup ClassicRTEMS
* @brief Semaphore Manager
*
* Directives provided are:
* 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.
*
* - create a semaphore
* - get an ID of a semaphore
* - delete a semaphore
* - acquire a semaphore
* - release a semaphore
* 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
@@ -137,22 +140,22 @@ rtems_status_code rtems_semaphore_create(
);
/**
* @brief RTEMS Semaphore Name to 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.
* 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
* @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
* @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,
@@ -161,39 +164,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
* @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.
* 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)
* @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.
* @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,
@@ -217,18 +220,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
@@ -248,28 +251,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] 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

View File

@@ -1,24 +1,27 @@
/**
* @file rtems/rtems/signal.h
*
* @brief Constants and Structures Associated with the Signal Manager
* @defgroup ClassicSignal Signals
*
* 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.
* @ingroup ClassicRTEMS
* @brief Signal Manager
*
* Directives provided are:
* 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.
*
* + establish an asynchronous signal routine
* + send a signal set to a task
* 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
@@ -52,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,
@@ -71,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,

View File

@@ -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()

View File

@@ -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

View File

@@ -1,36 +1,39 @@
/**
* @file rtems/rtems/tasks.h
*
* @brief Constants and Structures Associated with RTEMS Tasks
* @defgroup ClassicTasks 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.
* @ingroup ClassicRTEMS
* @brief RTEMS Tasks
*
* Directives provided are:
* 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.
*
* - 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
* 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
@@ -251,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,
@@ -280,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,
@@ -306,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,
@@ -343,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,
@@ -364,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,
@@ -385,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,
@@ -402,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,
@@ -471,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

View File

@@ -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