rtems: Doxygen Clean Up Task #2

This commit is contained in:
Ayush Awasthi
2013-01-04 09:22:20 -06:00
committed by Jennifer Averett
parent 00c1cd5f60
commit d106ab3efd
20 changed files with 686 additions and 612 deletions

View File

@@ -1,19 +1,22 @@
/** /**
* @file rtems/rtems/asr.h * @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 * @ingroup ClassicRTEMS
* with the Asynchronous Signal Handler. This Handler provides the low-level * @brief Asynchronous Signal Handler
* support required by the Signal Manager. *
* 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. /* COPYRIGHT (c) 1989-2008.
* On-Line Applications Research Corporation (OAR). * On-Line Applications Research Corporation (OAR).
* *
* The license and distribution terms for this file may be * The license and distribution terms for this file may be
* found in the file LICENSE in this distribution or at * found in the file LICENSE in this distribution or at
* http://www.rtems.com/license/LICENSE. * http://www.rtems.com/license/LICENSE.
*/ */
#ifndef _RTEMS_RTEMS_ASR_H #ifndef _RTEMS_RTEMS_ASR_H

View File

@@ -1,50 +1,53 @@
/** /**
* @file rtems/rtems/barrier.h * @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 * @ingroup ClassicRTEMS
* with the Barrier Manager. * @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 * Directives provided are:
* - get an ID of a barrier *
* - delete a barrier * - create a barrier
* - wait for a barrier * - get an ID of a barrier
* - signal a barrier * - delete a barrier
* - wait for a barrier
* - signal a barrier
*/ */
/* COPYRIGHT (c) 1989-2008. /* COPYRIGHT (c) 1989-2008.
* On-Line Applications Research Corporation (OAR). * On-Line Applications Research Corporation (OAR).
* *
* The license and distribution terms for this file may be * The license and distribution terms for this file may be
* found in the file LICENSE in this distribution or at * found in the file LICENSE in this distribution or at
* http://www.rtems.com/license/LICENSE. * http://www.rtems.com/license/LICENSE.
*/ */
#ifndef _RTEMS_RTEMS_BARRIER_H #ifndef _RTEMS_RTEMS_BARRIER_H
#define _RTEMS_RTEMS_BARRIER_H #define _RTEMS_RTEMS_BARRIER_H
/** /**
* @defgroup ClassicBarrier Barriers * @defgroup ClassicBarrier Barriers
* *
* @ingroup ClassicRTEMS * @ingroup ClassicRTEMS
* *
* This encapsulates functionality which implements the Classic API * This encapsulates functionality which implements the Classic API
* Barrier Manager. * 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 constant is defined to extern most of the time when using
* this header file. However by defining it to nothing, the data * this header file. However by defining it to nothing, the data
* declared in this header file can be instantiated. This is done * declared in this header file can be instantiated. This is done
* in a single per manager file. * in a single per manager file.
*/ */
#ifndef RTEMS_BARRIER_EXTERN #ifndef RTEMS_BARRIER_EXTERN
#define RTEMS_BARRIER_EXTERN extern #define RTEMS_BARRIER_EXTERN extern
@@ -87,23 +90,23 @@ RTEMS_BARRIER_EXTERN Objects_Information _Barrier_Information;
void _Barrier_Manager_initialization(void); 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 * This routine implements the rtems_barrier_create directive. The
* barrier will have the name name. The starting count for * barrier will have the name name. The starting count for
* the barrier is count. The attribute_set determines if * the barrier is count. The attribute_set determines if
* the barrier is global or local and the thread queue * the barrier is global or local and the thread queue
* discipline. It returns the id of the created barrier in ID. * discipline. It returns the id of the created barrier in ID.
* *
* @param[in] name is the name of this barrier instance. * @param[in] name is the name of this barrier instance.
* @param[in] attribute_set specifies the attributes 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 * @param[in] maximum_waiters is the maximum number of threads which will
* be allowed to concurrently wait at the barrier. * be allowed to concurrently wait at the barrier.
* @param[out] id will contain the id of this 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_status_code rtems_barrier_create(
rtems_name name, rtems_name name,
@@ -113,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 routine implements the rtems_barrier_ident directive.
* This directive returns the barrier ID associated with name. * This directive returns the barrier ID associated with name.
* If more than one barrier is named name, then the barrier * If more than one barrier is named name, then the barrier
* to which the ID belongs is arbitrary. node indicates the * to which the ID belongs is arbitrary. node indicates the
* extent of the search for the ID of the barrier named name. * extent of the search for the ID of the barrier named name.
* The search can be limited to a particular node or allowed to * The search can be limited to a particular node or allowed to
* encompass all nodes. * encompass all nodes.
* *
* @param[in] name is the name of this barrier instance. * @param[in] name is the name of this barrier instance.
* @param[out] id will contain the id of this 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_ident( rtems_status_code rtems_barrier_ident(
rtems_name name, rtems_name name,
@@ -134,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 * This routine implements the rtems_barrier_delete directive. The
* barrier indicated by @a id is deleted. The barrier is freed back to the * barrier indicated by @a id is deleted. The barrier is freed back to the
* inactive barrier chain. * 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_status_code rtems_barrier_delete(
rtems_id id rtems_id id
); );
/** /**
* @brief RTEMS Barrier Wait * @brief RTEMS Barrier Wait
* *
* This routine implements the rtems_barrier_wait directive. It * This routine implements the rtems_barrier_wait directive. It
* attempts to wait at the barrier associated with @a id. The calling task * 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 * may block waiting for the barrier with an optional timeout of @a timeout
* clock ticks. * clock ticks.
* *
* @param[in] id indicates the barrier to wait at. * @param[in] id indicates the barrier to wait at.
* @param[in] timeout is the maximum length of time in ticks the calling * @param[in] timeout is the maximum length of time in ticks the calling
* thread is willing to block. * 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_status_code rtems_barrier_wait(
rtems_id id, rtems_id id,
@@ -169,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 * This routine implements the rtems_barrier_release directive. It
* unblocks all of the threads waiting on the barrier associated with * unblocks all of the threads waiting on the barrier associated with
* @a id. The number of threads unblocked is returned in @a released. * @a id. The number of threads unblocked is returned in @a released.
* *
* *
* @param[in] id indicates the barrier to wait at. * @param[in] id indicates the barrier to wait at.
* @param[out] released will contain the number of threads unblocked. * @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_status_code rtems_barrier_release(
rtems_id id, rtems_id id,
@@ -189,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 * This function returns a RTEMS status code based on the barrier
* status code specified. * 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 ( rtems_status_code _Barrier_Translate_core_barrier_return_code (
CORE_barrier_Status the_status CORE_barrier_Status the_status

View File

@@ -1,27 +1,30 @@
/** /**
* @file rtems/rtems/clock.h * @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 * @ingroup ClassicRTEMS
* with the Clock Manager. This manager provides facilities to set, obtain, * @brief Clock Manager API
* and continually update the current date and time.
* *
* 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 * This manager provides directives to:
* - obtain the current date and time *
* - set the nanoseconds since last clock tick handler * - set the current date and time
* - announce a clock tick * - obtain the current date and time
* - obtain the system uptime * - set the nanoseconds since last clock tick handler
* - announce a clock tick
* - obtain the system uptime
*/ */
/* COPYRIGHT (c) 1989-2008. /* COPYRIGHT (c) 1989-2008.
* On-Line Applications Research Corporation (OAR). * On-Line Applications Research Corporation (OAR).
* *
* The license and distribution terms for this file may be * The license and distribution terms for this file may be
* found in the file LICENSE in this distribution or at * found in the file LICENSE in this distribution or at
* http://www.rtems.com/license/LICENSE. * http://www.rtems.com/license/LICENSE.
*/ */
#ifndef _RTEMS_RTEMS_CLOCK_H #ifndef _RTEMS_RTEMS_CLOCK_H
@@ -70,21 +73,21 @@ typedef Watchdog_Nanoseconds_since_last_tick_routine
rtems_nanoseconds_extension_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 * This routine implements the rtems_clock_get directive. It returns
* one of the following: * one of the following:
* + current time of day * + current time of day
* + seconds since epoch * + seconds since epoch
* + ticks since boot * + ticks since boot
* + ticks per second * + ticks per second
* *
* @param[in] option is the format of time to return * @param[in] option is the format of time to return
* @param[in] time_buffer points to the output area * @param[in] time_buffer points to the output area
* *
* @return This method returns RTEMS_SUCCESSFUL if there was not an * @retval This method returns RTEMS_SUCCESSFUL if there was not an
* error. Otherwise, a status code is returned indicating the * error. Otherwise, a status code is returned indicating the
* source of the error. * source of the error.
*/ */
rtems_status_code rtems_clock_get( rtems_status_code rtems_clock_get(
rtems_clock_get_options option, rtems_clock_get_options option,
@@ -92,189 +95,189 @@ 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 * This routine implements the rtems_clock_get_tod directive. It returns
* the current time of day in the format defined by RTEID. * 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 * @retval This method returns RTEMS_SUCCESSFUL if there was not an
* error. Otherwise, a status code is returned indicating the * error. Otherwise, a status code is returned indicating the
* source of the error. If successful, the time_buffer will * source of the error. If successful, the time_buffer will
* be filled in with the current time of day. * be filled in with the current time of day.
*/ */
rtems_status_code rtems_clock_get_tod( rtems_status_code rtems_clock_get_tod(
rtems_time_of_day *time_buffer 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 * This routine implements the rtems_clock_get_tod_timeval
* directive. * 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 * @retval This method returns RTEMS_SUCCESSFUL if there was not an
* error. Otherwise, a status code is returned indicating the * error. Otherwise, a status code is returned indicating the
* source of the error. If successful, the time will * source of the error. If successful, the time will
* be filled in with the current time of day. * be filled in with the current time of day.
*/ */
rtems_status_code rtems_clock_get_tod_timeval( rtems_status_code rtems_clock_get_tod_timeval(
struct timeval *time struct timeval *time
); );
/** /**
* @brief Obtain Seconds Since Epoch * @brief Obtain Seconds Since Epoch
* *
* This routine implements the rtems_clock_get_seconds_since_epoch * This routine implements the rtems_clock_get_seconds_since_epoch
* directive. * 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 * @retval This method returns RTEMS_SUCCESSFUL if there was not an
* error. Otherwise, a status code is returned indicating the * error. Otherwise, a status code is returned indicating the
* source of the error. If successful, the time_buffer will * source of the error. If successful, the time_buffer will
* be filled in with the current time of day. * be filled in with the current time of day.
*/ */
rtems_status_code rtems_clock_get_seconds_since_epoch( rtems_status_code rtems_clock_get_seconds_since_epoch(
rtems_interval *the_interval rtems_interval *the_interval
); );
/** /**
* @brief Obtain Ticks Since Boot * @brief Obtain Ticks Since Boot
* *
* This routine implements the rtems_clock_get_ticks_since_boot * This routine implements the rtems_clock_get_ticks_since_boot
* directive. * directive.
* *
* @return This method returns the number of ticks since boot. It cannot * @retval This method returns the number of ticks since boot. It cannot
* fail since RTEMS always keeps a running count of ticks since boot. * fail since RTEMS always keeps a running count of ticks since boot.
*/ */
rtems_interval rtems_clock_get_ticks_since_boot(void); 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 * This routine implements the rtems_clock_get_ticks_per_second
* directive. * directive.
* *
* @return This method returns the number of ticks since boot. It cannot * @retval This method returns the number of ticks since boot. It cannot
* fail since RTEMS is always configured to know the number of * fail since RTEMS is always configured to know the number of
* ticks per second. * ticks per second.
*/ */
rtems_interval rtems_clock_get_ticks_per_second(void); 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 * This routine implements the rtems_clock_set directive. It sets
* the current time of day to that in the time_buffer record. * 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 * @retval This method returns RTEMS_SUCCESSFUL if there was not an
* error. Otherwise, a status code is returned indicating the * error. Otherwise, a status code is returned indicating the
* source of the error. * source of the error.
* *
* @note Activities scheduled based upon the current time of day * @note Activities scheduled based upon the current time of day
* may be executed immediately if the time is moved forward. * may be executed immediately if the time is moved forward.
*/ */
rtems_status_code rtems_clock_set( rtems_status_code rtems_clock_set(
const rtems_time_of_day *time_buffer 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 * This routine implements the rtems_clock_tick directive. It is invoked
* to inform RTEMS of the occurrence of a clock tick. * 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 * @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 * for all timeouts and delays. This routine only works for leap-years
* through 2099. * through 2099.
*/ */
rtems_status_code rtems_clock_tick( void ); 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 * This directive sets the BSP provided nanoseconds since last tick
* extension. * 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 * @return This method returns RTEMS_SUCCESSFUL if there was not an
* error. Otherwise, a status code is returned indicating the * error. Otherwise, a status code is returned indicating the
* source of the error. * source of the error.
*/ */
rtems_status_code rtems_clock_set_nanoseconds_extension( rtems_status_code rtems_clock_set_nanoseconds_extension(
rtems_nanoseconds_extension_routine routine rtems_nanoseconds_extension_routine routine
); );
/** /**
* @brief Obtain the System Uptime * @brief Obtain the System Uptime
* *
* This directive returns the system uptime. * This directive returns the system uptime.
* *
* @param[in] uptime is a pointer to the time structure * @param[in] uptime is a pointer to the time structure
* *
* @return This method returns RTEMS_SUCCESSFUL if there was not an * @retval This method returns RTEMS_SUCCESSFUL if there was not an
* error. Otherwise, a status code is returned indicating the * error. Otherwise, a status code is returned indicating the
* source of the error. If successful, the uptime will be * source of the error. If successful, the uptime will be
* filled in. * filled in.
* *
* Clock Manager - get uptime * Clock Manager - get uptime
*/ */
rtems_status_code rtems_clock_get_uptime( rtems_status_code rtems_clock_get_uptime(
struct timespec *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] Returns the system uptime. Pointer must not be NULL. * @param[out] Returns the system uptime. Pointer must not be NULL.
*/ */
void rtems_clock_get_uptime_timeval( struct timeval *uptime ); 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 ); time_t rtems_clock_get_uptime_seconds( void );
/** /**
* @brief TOD Validate * @brief TOD Validate
* *
* This support function returns true if @a the_tod contains * This support function returns true if @a the_tod contains
* a valid time of day, and false otherwise. * 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( bool _TOD_Validate(
const rtems_time_of_day *the_tod 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 * @retval This method returns the number of seconds since epoch represented
* by @a the_tod * by @a the_tod
*/ */
Watchdog_Interval _TOD_To_seconds( Watchdog_Interval _TOD_To_seconds(
const rtems_time_of_day *the_tod const rtems_time_of_day *the_tod

View File

@@ -1,25 +1,28 @@
/** /**
* @file rtems/rtems/event.h * @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 * @ingroup ClassicRTEMS
* Manager. This manager provides a high performance method of communication * @brief Information Related to Event Manager
* and synchronization.
* *
* 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 * Directives provided are:
* - receive event condition *
* - send an event set to a task
* - receive event condition
* *
*/ */
/* COPYRIGHT (c) 1989-2008. /* COPYRIGHT (c) 1989-2008.
* On-Line Applications Research Corporation (OAR). * On-Line Applications Research Corporation (OAR).
* *
* The license and distribution terms for this file may be * The license and distribution terms for this file may be
* found in the file LICENSE in this distribution or at * found in the file LICENSE in this distribution or at
* http://www.rtems.com/license/LICENSE. * http://www.rtems.com/license/LICENSE.
*/ */
#ifndef _RTEMS_RTEMS_EVENT_H #ifndef _RTEMS_RTEMS_EVENT_H
@@ -100,38 +103,38 @@ extern "C" {
*/ */
/** /**
* @brief Sends an Event Set to the Target Task * @brief Sends an Event Set to the Target Task
* *
* This directive sends an event set @a event_in to the task specified by * This directive sends an event set @a event_in to the task specified by
* @a id. * @a id.
* *
* Based upon the state of the target task, one of the following situations * Based upon the state of the target task, one of the following situations
* applies. The target task is * applies. The target task is
* - blocked waiting for events. * - blocked waiting for events.
* If the waiting task's input event condition is * If the waiting task's input event condition is
* - satisfied, then the task is made ready for execution. * - satisfied, then the task is made ready for execution.
* - not satisfied, then the event set is posted but left pending and the * - not satisfied, then the event set is posted but left pending and the
* task remains blocked. * task remains blocked.
* - not waiting for events. * - not waiting for events.
* - The event set is posted and left pending. * - The event set is posted and left pending.
* *
* Identical events sent to a task are not queued. In other words, the second, * 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 * and subsequent, posting of an event to a task before it can perform an
* rtems_event_receive() has no effect. * rtems_event_receive() has no effect.
* *
* The calling task will be preempted if it has preemption enabled and a * The calling task will be preempted if it has preemption enabled and a
* higher priority task is unblocked as the result of this directive. * 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 * 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 * node will generate a request telling the remote node to send the event set
* to the appropriate task. * to the appropriate task.
* *
* @param[in] id Identifier of the target task. Specifying @ref RTEMS_SELF * @param[in] id Identifier of the target task. Specifying @ref RTEMS_SELF
* results in the event set being sent to the calling task. * results in the event set being sent to the calling task.
* @param[in] event_in Event set sent to the target task. * @param[in] event_in Event set sent to the target task.
* *
* @retval RTEMS_SUCCESSFUL Successful operation. * @retval RTEMS_SUCCESSFUL Successful operation.
* @retval RTEMS_INVALID_ID Invalid task identifier. * @retval RTEMS_INVALID_ID Invalid task identifier.
*/ */
rtems_status_code rtems_event_send ( rtems_status_code rtems_event_send (
rtems_id id, rtems_id id,
@@ -139,65 +142,65 @@ rtems_status_code rtems_event_send (
); );
/** /**
* @brief Receives pending events. * @brief Receives pending events.
* *
* This directive attempts to receive the event condition specified in * 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 * @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 * 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 * @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 * 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 * 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 * 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 * 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 * 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 * task with the value that corresponds to the events in @a event_in that were
* satisfied. * satisfied.
* *
* A task can determine the pending event set by using a value of * 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 * @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 * events are returned to the calling task but the event set is left
* unaltered. * unaltered.
* *
* A task can receive all of the currently pending events by using the a value * 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 * 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. * @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 * 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 * cleared. If no events are pending then the @ref RTEMS_UNSATISFIED status
* code will be returned. * code will be returned.
* *
* If pending events satisfy the event condition, then @a event_out is set to * 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 * 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 * 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 * 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 * the calling task chooses to wait, then it will block waiting for the event
* condition. * condition.
* *
* If the calling task must wait for the event condition to be satisfied, then * 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 * 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. * 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 * 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 * pending events that do not correspond to any of the events specified in
* @a event_in will be left pending. * @a event_in will be left pending.
* *
* A clock tick is required to support the wait with time out functionality of * A clock tick is required to support the wait with time out functionality of
* this directive. * this directive.
* *
* @param[in] event_in Set of requested events (input events). * @param[in] event_in Set of requested events (input events).
* @param[in] option_set Use a bitwise or of the following options * @param[in] option_set Use a bitwise or of the following options
* - @ref RTEMS_WAIT - task will wait for event (default), * - @ref RTEMS_WAIT - task will wait for event (default),
* - @ref RTEMS_NO_WAIT - task should not wait, * - @ref RTEMS_NO_WAIT - task should not wait,
* - @ref RTEMS_EVENT_ALL - return after all events (default), and * - @ref RTEMS_EVENT_ALL - return after all events (default), and
* - @ref RTEMS_EVENT_ANY - return after any events. * - @ref RTEMS_EVENT_ANY - return after any events.
* @param[in] ticks Time out in ticks. Use @ref RTEMS_NO_TIMEOUT to wait * @param[in] ticks Time out in ticks. Use @ref RTEMS_NO_TIMEOUT to wait
* without a time out (potentially forever). * without a time out (potentially forever).
* @param[out] event_out Set of received events (output events). * @param[out] event_out Set of received events (output events).
* *
* @retval RTEMS_SUCCESSFUL Successful operation. * @retval RTEMS_SUCCESSFUL Successful operation.
* @retval RTEMS_UNSATISFIED Input events not satisfied (only with the * @retval RTEMS_UNSATISFIED Input events not satisfied (only with the
* @ref RTEMS_NO_WAIT option). * @ref RTEMS_NO_WAIT option).
* @retval RTEMS_INVALID_ADDRESS The @a event_out pointer is @c NULL. * @retval RTEMS_INVALID_ADDRESS The @a event_out pointer is @c NULL.
* @retval RTEMS_TIMEOUT Timed out waiting for events. * @retval RTEMS_TIMEOUT Timed out waiting for events.
*/ */
rtems_status_code rtems_event_receive ( rtems_status_code rtems_event_receive (
rtems_event_set event_in, rtems_event_set event_in,

View File

@@ -1,16 +1,21 @@
/** /**
* @file rtems/rtems/eventmp.h * @file rtems/rtems/eventmp.h
* *
* This include file contains all the constants and structures associated * @defgroup ClassicEventMP Event MP Support
* with the Multiprocessing Support in the Event Manager. *
* @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. /* COPYRIGHT (c) 1989-2008.
* On-Line Applications Research Corporation (OAR). * On-Line Applications Research Corporation (OAR).
* *
* The license and distribution terms for this file may be * The license and distribution terms for this file may be
* found in the file LICENSE in this distribution or at * found in the file LICENSE in this distribution or at
* http://www.rtems.com/license/LICENSE. * http://www.rtems.com/license/LICENSE.
*/ */
#ifndef _RTEMS_RTEMS_EVENTMP_H #ifndef _RTEMS_RTEMS_EVENTMP_H

View File

@@ -1,19 +1,22 @@
/** /**
* @file rtems/rtems/eventset.h * @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 * @ingroup ClassicRTEMS
* Event Sets Handler. This handler provides methods for the manipulation * @brief Event Sets Handler
* of event sets which will be sent and received by tasks. *
* 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. /* COPYRIGHT (c) 1989-2008.
* On-Line Applications Research Corporation (OAR). * On-Line Applications Research Corporation (OAR).
* *
* The license and distribution terms for this file may be * The license and distribution terms for this file may be
* found in the file LICENSE in this distribution or at * found in the file LICENSE in this distribution or at
* http://www.rtems.com/license/LICENSE. * http://www.rtems.com/license/LICENSE.
*/ */
#ifndef _RTEMS_RTEMS_EVENTSET_H #ifndef _RTEMS_RTEMS_EVENTSET_H

View File

@@ -1,18 +1,21 @@
/** /**
* @file rtems/rtems/intr.h * @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 * @ingroup ClassicRTEMS
* the Interrupt Manager. * @brief Header file for Interrupt Manager
*
* This include file contains all the constants and structures associated with
* the Interrupt Manager.
*/ */
/* COPYRIGHT (c) 1989-2008. /* COPYRIGHT (c) 1989-2008.
* On-Line Applications Research Corporation (OAR). * On-Line Applications Research Corporation (OAR).
* *
* The license and distribution terms for this file may be * The license and distribution terms for this file may be
* found in the file LICENSE in this distribution or at * found in the file LICENSE in this distribution or at
* http://www.rtems.com/license/LICENSE. * http://www.rtems.com/license/LICENSE.
*/ */
#ifndef _RTEMS_RTEMS_INTR_H #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 * This directive installs @a new_isr_handler as the RTEMS interrupt service
* routine for the interrupt vector with number @a vector. The previous RTEMS * routine for the interrupt vector with number @a vector. The previous RTEMS
* interrupt service routine is returned in @a old_isr_handler. * interrupt service routine is returned in @a old_isr_handler.
* *
* @param[in] new_isr_handler is the address of interrupt service routine * @param[in] new_isr_handler is the address of interrupt service routine
* @param[in] vector is the interrupt vector number * @param[in] vector is the interrupt vector number
* @param[in] old_isr_handler address at which to store previous ISR address * @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 * address
*/ */
rtems_status_code rtems_interrupt_catch( rtems_status_code rtems_interrupt_catch(

View File

@@ -1,30 +1,33 @@
/** /**
* @file rtems/rtems/message.h * @file rtems/rtems/message.h
* *
* @brief Constants and Structures Associated with the Message Queue Manager * @defgroup ClassicMessageQueue Message Queues
* *
* This include file contains all the constants and structures associated * @ingroup ClassicRTEMS
* with the Message Queue Manager. This manager provides a mechanism for * @brief Message Queue Manager
* communication and synchronization between tasks using messages.
* *
* Directives provided are: * 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.
* *
* - create a queue * Directives provided are:
* - get ID of a queue *
* - delete a queue * - create a queue
* - put a message at the rear of a queue * - get ID of a queue
* - put a message at the front of a queue * - delete a queue
* - broadcast N messages to a queue * - put a message at the rear of a queue
* - receive message from a queue * - put a message at the front of a queue
* - flush all messages on a queue * - broadcast N messages to a queue
* - receive message from a queue
* - flush all messages on a queue
*/ */
/* COPYRIGHT (c) 1989-2008. /* COPYRIGHT (c) 1989-2008.
* On-Line Applications Research Corporation (OAR). * On-Line Applications Research Corporation (OAR).
* *
* The license and distribution terms for this file may be * The license and distribution terms for this file may be
* found in the file LICENSE in this distribution or at * found in the file LICENSE in this distribution or at
* http://www.rtems.com/license/LICENSE. * http://www.rtems.com/license/LICENSE.
*/ */
#ifndef _RTEMS_RTEMS_MESSAGE_H #ifndef _RTEMS_RTEMS_MESSAGE_H
@@ -106,25 +109,25 @@ RTEMS_MESSAGE_EXTERN Objects_Information _Message_queue_Information;
void _Message_queue_Manager_initialization(void); void _Message_queue_Manager_initialization(void);
/** /**
* @brief RTEMS Create Message Queue * @brief RTEMS Create Message Queue
* *
* This routine implements the rtems_message_queue_create directive. The * This routine implements the rtems_message_queue_create directive. The
* message queue will have the @a name. If the @a attribute_set indicates * 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 the message queue is to be limited in the number of messages
* that can be outstanding, then @a count indicates the maximum number of * that can be outstanding, then @a count indicates the maximum number of
* messages that will be held. It returns the id of the created * messages that will be held. It returns the id of the created
* message queue in @a id. * message queue in @a id.
* *
* @param[in] name is the user defined queue name * @param[in] name is the user defined queue name
* @param[in] count is the maximum message and reserved buffer count * @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] max_message_size is the maximum size of each message
* @param[in] attribute_set is the process method * @param[in] attribute_set is the process method
* @param[in] id is the pointer to queue * @param[in] id is the pointer to queue
* *
* @return This method returns RTEMS_SUCCESSFUL if there was not an * @retval This method returns RTEMS_SUCCESSFUL if there was not an
* error. Otherwise, a status code is returned indicating the * error. Otherwise, a status code is returned indicating the
* source of the error. If successful, the @a id will * source of the error. If successful, the @a id will
* be filled in with the queue id. * be filled in with the queue id.
*/ */
rtems_status_code rtems_message_queue_create( rtems_status_code rtems_message_queue_create(
rtems_name name, rtems_name name,
@@ -135,22 +138,22 @@ rtems_status_code rtems_message_queue_create(
); );
/** /**
* @brief RTEMS Message Queue Name to Id * @brief RTEMS Message Queue Name to Id
* *
* This routine implements the rtems_message_queue_ident directive. * This routine implements the rtems_message_queue_ident directive.
* This directive returns the message queue ID associated with NAME. * This directive returns the message queue ID associated with NAME.
* If more than one message queue is named name, then the message * If more than one message queue is named name, then the message
* queue to which the ID belongs is arbitrary. node indicates the * queue to which the ID belongs is arbitrary. node indicates the
* extent of the search for the ID of the message queue named name. * 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 * The search can be limited to a particular node or allowed to
* encompass all nodes. * encompass all nodes.
* *
* @param[in] name is the user defined message queue name * @param[in] name is the user defined message queue name
* @param[in] node is the node(s) to be searched * @param[in] node is the node(s) to be searched
* @param[in] id is the pointer to message queue id * @param[in] id is the pointer to message queue id
* *
* @return RTEMS_SUCCESSFUL if successful or error code if unsuccessful and * @retval RTEMS_SUCCESSFUL if successful or error code if unsuccessful and
* *id filled with the message queue id * *id filled with the message queue id
*/ */
rtems_status_code rtems_message_queue_ident( rtems_status_code rtems_message_queue_ident(
rtems_name name, 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 * This routine implements the rtems_message_queue_delete directive. The
* message queue indicated by ID is deleted. * 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_status_code rtems_message_queue_delete(
rtems_id id 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 routine implements the rtems_message_queue_urgent directive.
* This directive has the same behavior as rtems_message_queue_send * This directive has the same behavior as rtems_message_queue_send
* except that if no tasks are waiting, the message buffer will * except that if no tasks are waiting, the message buffer will
* be placed at the FRONT of the chain of pending messages rather * be placed at the FRONT of the chain of pending messages rather
* than at the REAR. * than at the REAR.
* *
* @param[in] id is the pointer to message queue * @param[in] id is the pointer to message queue
* @param[in] buffer is the pointer to message buffer * @param[in] buffer is the pointer to message buffer
* @param[in] size is the size of message to send urgently * @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_status_code rtems_message_queue_urgent(
rtems_id id, 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 routine implements the rtems_message_queue_broadcast directive.
* This directive sends the message buffer to all of the tasks blocked * This directive sends the message buffer to all of the tasks blocked
* waiting for a message on the message queue indicated by ID. * waiting for a message on the message queue indicated by ID.
* If no tasks are waiting, then the message buffer will not be queued. * If no tasks are waiting, then the message buffer will not be queued.
* *
* @param[in] id is the pointer to message queue * @param[in] id is the pointer to message queue
* @param[in] buffer is the pointer to message buffer * @param[in] buffer is the pointer to message buffer
* @param[in] size is the size of message to broadcast * @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] count pointer to area to store number of threads made ready
* *
* @return RTEMS_SUCCESSFUL if successful or error code if unsuccessful and * @retval RTEMS_SUCCESSFUL if successful or error code if unsuccessful and
* *count filled in with number of threads made ready * *count filled in with number of threads made ready
*/ */
rtems_status_code rtems_message_queue_broadcast( rtems_status_code rtems_message_queue_broadcast(
rtems_id id, rtems_id id,
@@ -238,25 +241,25 @@ rtems_status_code rtems_message_queue_broadcast(
); );
/** /**
* @brief RTEMS Message Queue Receive * @brief RTEMS Message Queue Receive
* *
* This routine implements the rtems_message_queue_receive directive. * This routine implements the rtems_message_queue_receive directive.
* This directive is invoked when the calling task wishes to receive * This directive is invoked when the calling task wishes to receive
* a message from the message queue indicated by ID. The received * a message from the message queue indicated by ID. The received
* message is to be placed in buffer. If no messages are outstanding * message is to be placed in buffer. If no messages are outstanding
* and the option_set indicates that the task is willing to block, * and the option_set indicates that the task is willing to block,
* then the task will be blocked until a message arrives or until, * then the task will be blocked until a message arrives or until,
* optionally, timeout clock ticks have passed. * optionally, timeout clock ticks have passed.
* *
* @param[in] id is the queue id * @param[in] id is the queue id
* @param[in] buffer is the pointer to message buffer * @param[in] buffer is the pointer to message buffer
* @param[in] size is the size of message receive * @param[in] size is the size of message receive
* @param[in] option_set is the options on receive * @param[in] option_set is the options on receive
* @param[in] timeout is the number of ticks to wait * @param[in] timeout is the number of ticks to wait
* *
* @return This method returns RTEMS_SUCCESSFUL if there was not an * @retval This method returns RTEMS_SUCCESSFUL if there was not an
* error. Otherwise, a status code is returned indicating the * error. Otherwise, a status code is returned indicating the
* source of the error. * source of the error.
*/ */
rtems_status_code rtems_message_queue_receive( rtems_status_code rtems_message_queue_receive(
rtems_id id, 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 * This function allocates a message queue control block from
* the inactive chain of free message queue control blocks. * 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); 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 * This function returns a RTEMS status code based on
* @a the_message_queue_status. * @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 ( rtems_status_code _Message_queue_Translate_core_message_queue_return_code (
uint32_t the_message_queue_status uint32_t the_message_queue_status

View File

@@ -1,18 +1,21 @@
/** /**
* @file rtems/rtems/modes.h * @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 * @ingroup ClassicRTEMS
* with the RTEMS thread and RTEMS_ASR modes. * @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. /* COPYRIGHT (c) 1989-2008.
* On-Line Applications Research Corporation (OAR). * On-Line Applications Research Corporation (OAR).
* *
* The license and distribution terms for this file may be * The license and distribution terms for this file may be
* found in the file LICENSE in this distribution or at * found in the file LICENSE in this distribution or at
* http://www.rtems.com/license/LICENSE. * http://www.rtems.com/license/LICENSE.
*/ */
#ifndef _RTEMS_RTEMS_MODES_H #ifndef _RTEMS_RTEMS_MODES_H
@@ -84,14 +87,14 @@ typedef uint32_t Modes_Control;
#define RTEMS_NO_ASR 0x00000400 #define RTEMS_NO_ASR 0x00000400
/** /**
* @brief RTEMS_INTERRUPT_LEVEL * @brief RTEMS_INTERRUPT_LEVEL
* *
* This function returns the processor dependent interrupt * This function returns the processor dependent interrupt
* level which corresponds to the requested interrupt level. * level which corresponds to the requested interrupt level.
* *
* @note RTEMS supports 256 interrupt levels using the least * @note RTEMS supports 256 interrupt levels using the least
* significant eight bits of MODES.CONTROL. On any * significant eight bits of MODES.CONTROL. On any
* particular CPU, fewer than 256 levels may be supported. * particular CPU, fewer than 256 levels may be supported.
*/ */
#define RTEMS_INTERRUPT_LEVEL( _mode_set ) \ #define RTEMS_INTERRUPT_LEVEL( _mode_set ) \
( (_mode_set) & RTEMS_INTERRUPT_MASK ) ( (_mode_set) & RTEMS_INTERRUPT_MASK )
@@ -104,15 +107,15 @@ typedef uint32_t Modes_Control;
extern const uint32_t rtems_interrupt_mask; 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 * @retval This methods returns a mode with the desired interrupt
* @a level in the proper bitfield location. * @a level in the proper bitfield location.
* *
* @note This variable is used by bindings from languages other than * @note This variable is used by bindings from languages other than
* C and C++. * C and C++.
*/ */
Modes_Control rtems_interrupt_level_body( Modes_Control rtems_interrupt_level_body(
uint32_t level uint32_t level

View File

@@ -1,16 +1,21 @@
/** /**
* @file rtems/rtems/msgmp.h * @file rtems/rtems/msgmp.h
* *
* This include file contains all the constants and structures associated * @defgroup ClassicMsgMP Message Queue MP Support
* with the Multiprocessing Support in the Message Manager. *
* @ingroup ClassicRTEMS
* @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. /* COPYRIGHT (c) 1989-2008.
* On-Line Applications Research Corporation (OAR). * On-Line Applications Research Corporation (OAR).
* *
* The license and distribution terms for this file may be * The license and distribution terms for this file may be
* found in the file LICENSE in this distribution or at * found in the file LICENSE in this distribution or at
* http://www.rtems.com/license/LICENSE. * http://www.rtems.com/license/LICENSE.
*/ */
#ifndef _RTEMS_RTEMS_MSGMP_H #ifndef _RTEMS_RTEMS_MSGMP_H
@@ -119,10 +124,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 * This routine performs the actions specific to this package for
* the request from another node. * the request from another node.
*/ */
void _Message_queue_MP_Process_packet ( void _Message_queue_MP_Process_packet (
rtems_packet_prefix *the_packet_prefix rtems_packet_prefix *the_packet_prefix

View File

@@ -1,18 +1,21 @@
/** /**
* @file rtems/rtems/options.h * @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 * @ingroup ClassicRTEMS
* options available on many directives. * @brief Options Available on Many Directives
*
* This include file contains information which defines the
* options available on many directives.
*/ */
/* COPYRIGHT (c) 1989-2008. /* COPYRIGHT (c) 1989-2008.
* On-Line Applications Research Corporation (OAR). * On-Line Applications Research Corporation (OAR).
* *
* The license and distribution terms for this file may be * The license and distribution terms for this file may be
* found in the file LICENSE in this distribution or at * found in the file LICENSE in this distribution or at
* http://www.rtems.com/license/LICENSE. * http://www.rtems.com/license/LICENSE.
*/ */
#ifndef _RTEMS_RTEMS_OPTIONS_H #ifndef _RTEMS_RTEMS_OPTIONS_H
@@ -23,13 +26,13 @@ extern "C" {
#endif #endif
/** /**
* @defgroup ClassicOptions Classic API Options * @defgroup ClassicOptions Classic API Options
* *
* @ingroup ClassicRTEMS * @ingroup ClassicRTEMS
* *
* This encapsulates functionality related to the options argument * This encapsulates functionality related to the options argument
* to Classic API blocking operations. The primary option is whether * to Classic API blocking operations. The primary option is whether
* or not a task is willing to wait for the operation to complete. * or not a task is willing to wait for the operation to complete.
*/ */
/**@{*/ /**@{*/

View File

@@ -1,16 +1,21 @@
/** /**
* @file rtems/rtems/semmp.h * @file rtems/rtems/semmp.h
* *
* This include file contains all the constants and structures associated * @defgroup ClassicSEM Semaphore MP Support
* with the Multiprocessing Support in the Semaphore Manager. *
* @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. /* COPYRIGHT (c) 1989-2008.
* On-Line Applications Research Corporation (OAR). * On-Line Applications Research Corporation (OAR).
* *
* The license and distribution terms for this file may be * The license and distribution terms for this file may be
* found in the file LICENSE in this distribution or at * found in the file LICENSE in this distribution or at
* http://www.rtems.com/license/LICENSE. * http://www.rtems.com/license/LICENSE.
*/ */
#ifndef _RTEMS_RTEMS_SEMMP_H #ifndef _RTEMS_RTEMS_SEMMP_H
@@ -142,12 +147,12 @@ Semaphore_MP_Packet *_Semaphore_MP_Get_packet ( void );
/** /**
* @brief Semaphore Core Mutex MP Support * @brief Semaphore Core Mutex MP Support
* *
* This function processes the global actions necessary for remote * This function processes the global actions necessary for remote
* accesses to a global semaphore based on a core mutex. This function * accesses to a global semaphore based on a core mutex. This function
* is called by the core. * is called by the core.
* *
* @param[in] the_thread the remote thread the semaphore was surrendered to * @param[in] the_thread the remote thread the semaphore was surrendered to
* @param[in] id is the id of the surrendered semaphore * @param[in] id is the id of the surrendered semaphore
*/ */
void _Semaphore_Core_mutex_mp_support ( void _Semaphore_Core_mutex_mp_support (
Thread_Control *the_thread, 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 * This function processes the global actions necessary for remote
* accesses to a global semaphore based on a core semaphore. This function * accesses to a global semaphore based on a core semaphore. This function
* is called by the core. * is called by the core.
* *
* @param[in] the_thread the remote thread the semaphore was surrendered to * @param[in] the_thread the remote thread the semaphore was surrendered to
* @param[in] id is the id of the surrendered semaphore * @param[in] id is the id of the surrendered semaphore
*/ */
void _Semaphore_Core_semaphore_mp_support ( void _Semaphore_Core_semaphore_mp_support (
Thread_Control *the_thread, Thread_Control *the_thread,

View File

@@ -1,16 +1,21 @@
/** /**
* @file rtems/rtems/signalmp.h * @file rtems/rtems/signalmp.h
* *
* This include file contains all the constants and structures associated * @defgroup ClassicSignalMP Signal MP Support
* with the Multiprocessing Support in the Signal Manager. *
* @ingroup ClassicRTEMS
* @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. /* COPYRIGHT (c) 1989-2008.
* On-Line Applications Research Corporation (OAR). * On-Line Applications Research Corporation (OAR).
* *
* The license and distribution terms for this file may be * The license and distribution terms for this file may be
* found in the file LICENSE in this distribution or at * found in the file LICENSE in this distribution or at
* http://www.rtems.com/license/LICENSE. * http://www.rtems.com/license/LICENSE.
*/ */
#ifndef _RTEMS_RTEMS_SIGNALMP_H #ifndef _RTEMS_RTEMS_SIGNALMP_H

View File

@@ -1,19 +1,18 @@
/** /**
* @file * @file
* *
* @defgroup ClassicRTEMSWorkspace Workspace
*
* @ingroup ClassicRTEMS * @ingroup ClassicRTEMS
*
* @ingroup ClassicRTEMSWorkspace
*
* @brief Classic API support. * @brief Classic API support.
*/ */
/* COPYRIGHT (c) 1989-2008. /* COPYRIGHT (c) 1989-2008.
* On-Line Applications Research Corporation (OAR). * On-Line Applications Research Corporation (OAR).
* *
* The license and distribution terms for this file may be * The license and distribution terms for this file may be
* found in the file LICENSE in this distribution or at * found in the file LICENSE in this distribution or at
* http://www.rtems.com/license/LICENSE. * http://www.rtems.com/license/LICENSE.
*/ */
#ifndef _RTEMS_RTEMS_SUPPORT_H #ifndef _RTEMS_RTEMS_SUPPORT_H

View File

@@ -1,16 +1,21 @@
/** /**
* @file rtems/rtems/taskmp.h * @file rtems/rtems/taskmp.h
* *
* This include file contains all the constants and structures associated * @defgroup ClassicTaskMP Task MP Support
* with the multiprocessing support in the task manager. *
* @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. /* COPYRIGHT (c) 1989-2008.
* On-Line Applications Research Corporation (OAR). * On-Line Applications Research Corporation (OAR).
* *
* The license and distribution terms for this file may be * The license and distribution terms for this file may be
* found in the file LICENSE in this distribution or at * found in the file LICENSE in this distribution or at
* http://www.rtems.com/license/LICENSE. * http://www.rtems.com/license/LICENSE.
*/ */
#ifndef _RTEMS_RTEMS_TASKMP_H #ifndef _RTEMS_RTEMS_TASKMP_H

View File

@@ -1,38 +1,41 @@
/** /**
* @file rtems/rtems/timer.h * @file rtems/rtems/timer.h
* *
* @brief Constants, Structures, and Prototypes Associated with the Timer Manager * @defgroup ClassicTimer Timers
* *
* This include file contains all the constants, structures, and * @ingroup ClassicRTEMS
* prototypes associated with the Timer Manager. This manager provides * @brief Instantiate RTEMS Timer Data
* facilities to configure, initiate, cancel, and delete timers which will
* fire at specified intervals of time.
* *
* Directives provided are: * 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.
* *
* - create a timer * Directives provided are:
* - get an ID of a timer *
* - delete a timer * - create a timer
* - set timer to fire in context of clock tick * - get an ID of a timer
* - after a number of ticks have passed * - delete a timer
* - when a specified date and time has been reached * - set timer to fire in context of clock tick
* - initiate the timer server task * - after a number of ticks have passed
* - set timer to fire in context of the timer server task * - when a specified date and time has been reached
* - after a number of ticks have passed * - initiate the timer server task
* - when a specified date and time has been reached * - set timer to fire in context of the timer server task
* - reset a timer * - after a number of ticks have passed
* - cancel a time * - when a specified date and time has been reached
* - reset a timer
* - cancel a time
*/ */
/* /*
* COPYRIGHT (c) 1989-2011. * COPYRIGHT (c) 1989-2011.
* On-Line Applications Research Corporation (OAR). * 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 * The license and distribution terms for this file may be
* found in the file LICENSE in this distribution or at * found in the file LICENSE in this distribution or at
* http://www.rtems.com/license/LICENSE. * http://www.rtems.com/license/LICENSE.
*/ */
#ifndef _RTEMS_RTEMS_TIMER_H #ifndef _RTEMS_RTEMS_TIMER_H
@@ -231,16 +234,16 @@ RTEMS_TIMER_EXTERN Objects_Information _Timer_Information;
void _Timer_Manager_initialization(void); void _Timer_Manager_initialization(void);
/** /**
* @brief RTEMS Create Timer * @brief RTEMS Create Timer
* *
* This routine implements the rtems_timer_create directive. The * This routine implements the rtems_timer_create directive. The
* timer will have the name name. It returns the id of the * timer will have the name name. It returns the id of the
* created timer in ID. * created timer in ID.
* *
* @param[in] name is the timer name * @param[in] name is the timer name
* @param[out] id is the pointer to timer id * @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_status_code rtems_timer_create(
rtems_name name, 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 routine implements the rtems_timer_ident directive.
* This directive returns the timer ID associated with name. * This directive returns the timer ID associated with name.
* If more than one timer is named name, then the timer * If more than one timer is named name, then the timer
* to which the ID belongs is arbitrary. * to which the ID belongs is arbitrary.
* *
* @param[in] name is the user defined message queue name * @param[in] name is the user defined message queue name
* @param[in] id is the pointer to timer id * @param[in] id is the pointer to timer id
* *
* @return RTEMS_SUCCESSFUL if successful or error code if unsuccessful and * @retval RTEMS_SUCCESSFUL if successful or error code if unsuccessful and
* id filled with the message queue id * id filled with the message queue id
*/ */
rtems_status_code rtems_timer_ident( rtems_status_code rtems_timer_ident(
rtems_name name, 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 * This routine implements the rtems_timer_delete directive. The
* timer indicated by ID is deleted. * 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 * @retval This method returns RTEMS_SUCCESSFUL if there was not an
* error. Otherwise, a status code is returned indicating the * error. Otherwise, a status code is returned indicating the
* source of the error. * source of the error.
*/ */
rtems_status_code rtems_timer_delete( rtems_status_code rtems_timer_delete(
rtems_id id rtems_id id
); );
/** /**
* @brief RTEMS Timer Fire After * @brief RTEMS Timer Fire After
* *
* This routine implements the rtems_timer_fire_after directive. It * This routine implements the rtems_timer_fire_after directive. It
* initiates the timer associated with ID to fire in ticks clock ticks. * initiates the timer associated with ID to fire in ticks clock ticks.
* When the timer fires, the routine will be invoked in the context * When the timer fires, the routine will be invoked in the context
* of the rtems_clock_tick directive which is normally invoked as * of the rtems_clock_tick directive which is normally invoked as
* part of servicing a periodic interupt. * part of servicing a periodic interupt.
* *
* @param[in] id is the timer id * @param[in] id is the timer id
* @param[in] ticks is the interval until routine is fired * @param[in] ticks is the interval until routine is fired
* @param[in] routine is the routine to schedule * @param[in] routine is the routine to schedule
* @param[in] user_data is the passed as argument to routine when it is fired * @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 * @retval This method returns RTEMS_SUCCESSFUL if there was not an
* error. Otherwise, a status code is returned indicating the * error. Otherwise, a status code is returned indicating the
* source of the error. * source of the error.
*/ */
rtems_status_code rtems_timer_fire_after( rtems_status_code rtems_timer_fire_after(
rtems_id id, rtems_id id,
@@ -318,22 +321,22 @@ rtems_status_code rtems_timer_fire_after(
); );
/** /**
* @brief RTEMS Timer Server Fire After * @brief RTEMS Timer Server Fire After
* *
* This routine implements the rtems_timer_server_fire_after directive. It * This routine implements the rtems_timer_server_fire_after directive. It
* initiates the timer associated with ID to fire in ticks clock * initiates the timer associated with ID to fire in ticks clock
* ticks. When the timer fires, the routine will be invoked by the * 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 * Timer Server in the context of a task NOT IN THE CONTEXT of the
* clock tick interrupt. * clock tick interrupt.
* *
* @param[in] id is the timer id * @param[in] id is the timer id
* @param[in] ticks is the interval until routine is fired * @param[in] ticks is the interval until routine is fired
* @param[in] routine is the routine to schedule * @param[in] routine is the routine to schedule
* @param[in] user_data is the passed as argument to routine when it is fired * @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 * @retval This method returns RTEMS_SUCCESSFUL if there was not an
* error. Otherwise, a status code is returned indicating the * error. Otherwise, a status code is returned indicating the
* source of the error. * source of the error.
*/ */
rtems_status_code rtems_timer_server_fire_after( rtems_status_code rtems_timer_server_fire_after(
rtems_id id, rtems_id id,
@@ -343,22 +346,22 @@ rtems_status_code rtems_timer_server_fire_after(
); );
/** /**
* @brief RTEMS Timer Fire When * @brief RTEMS Timer Fire When
* *
* This routine implements the rtems_timer_fire_when directive. It * This routine implements the rtems_timer_fire_when directive. It
* initiates the timer associated with ID to fire at wall_time * initiates the timer associated with ID to fire at wall_time
* When the timer fires, the routine will be invoked in the context * When the timer fires, the routine will be invoked in the context
* of the rtems_clock_tick directive which is normally invoked as * of the rtems_clock_tick directive which is normally invoked as
* part of servicing a periodic interupt. * part of servicing a periodic interupt.
* *
* @param[in] id is the timer id * @param[in] id is the timer id
* @param[in] wall_time is the time of day to fire timer * @param[in] wall_time is the time of day to fire timer
* @param[in] routine is the routine to schedule * @param[in] routine is the routine to schedule
* @param[in] user_data is the passed as argument to routine when it is fired * @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 * @retval This method returns RTEMS_SUCCESSFUL if there was not an
* error. Otherwise, a status code is returned indicating the * error. Otherwise, a status code is returned indicating the
* source of the error. * source of the error.
*/ */
rtems_status_code rtems_timer_fire_when( rtems_status_code rtems_timer_fire_when(
rtems_id id, rtems_id id,
@@ -435,16 +438,16 @@ typedef struct {
} rtems_timer_information; } rtems_timer_information;
/** /**
* @brief RTEMS Get Timer Information * @brief RTEMS Get Timer Information
* *
* This routine implements the rtems_timer_get_information directive. * This routine implements the rtems_timer_get_information directive.
* This directive returns information about the timer. * This directive returns information about the timer.
* *
* @param[in] id is the timer id * @param[in] id is the timer id
* @param[in] the_info is the pointer to timer information block * @param[in] the_info is the pointer to timer information block
* *
* @return RTEMS_SUCCESSFUL if successful or error code if unsuccessful and * @retval RTEMS_SUCCESSFUL if successful or error code if unsuccessful and
* *the_info region information block filled in * *the_info region information block filled in
*/ */
rtems_status_code rtems_timer_get_information( rtems_status_code rtems_timer_get_information(
rtems_id id, rtems_id id,

View File

@@ -1,16 +1,21 @@
/** /**
* @file rtems/rtems/asr.inl * @file rtems/rtems/asr.inl
* *
* This include file contains the implemenation of all routines * @defgroup ClassicASR ASR Support
* associated with the asynchronous signal handler which are inlined. *
* @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. /* COPYRIGHT (c) 1989-2008.
* On-Line Applications Research Corporation (OAR). * On-Line Applications Research Corporation (OAR).
* *
* The license and distribution terms for this file may be * The license and distribution terms for this file may be
* found in the file LICENSE in this distribution or at * found in the file LICENSE in this distribution or at
* http://www.rtems.com/license/LICENSE. * http://www.rtems.com/license/LICENSE.
*/ */
#ifndef _RTEMS_RTEMS_ASR_H #ifndef _RTEMS_RTEMS_ASR_H

View File

@@ -1,17 +1,22 @@
/** /**
* @file rtems/rtems/barrier.inl * @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 * This file contains the static inlin implementation of the inlined
* routines from the Barrier Manager. * routines from the Barrier Manager.
*/ */
/* /*
* COPYRIGHT (c) 1989-2008. * COPYRIGHT (c) 1989-2008.
* On-Line Applications Research Corporation (OAR). * On-Line Applications Research Corporation (OAR).
* *
* The license and distribution terms for this file may be * The license and distribution terms for this file may be
* found in the file LICENSE in this distribution or at * found in the file LICENSE in this distribution or at
* http://www.rtems.com/license/LICENSE. * http://www.rtems.com/license/LICENSE.
*/ */
#ifndef _RTEMS_RTEMS_BARRIER_H #ifndef _RTEMS_RTEMS_BARRIER_H

View File

@@ -1,16 +1,21 @@
/** /**
* @file rtems/rtems/region.inl * @file rtems/rtems/region.inl
* *
* This file contains the macro implementation of the inlined * @defgroup ClassicRegion
* routines from the Region Manager. *
* @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. /* COPYRIGHT (c) 1989-2008.
* On-Line Applications Research Corporation (OAR). * On-Line Applications Research Corporation (OAR).
* *
* The license and distribution terms for this file may be * The license and distribution terms for this file may be
* found in the file LICENSE in this distribution or at * found in the file LICENSE in this distribution or at
* http://www.rtems.com/license/LICENSE. * http://www.rtems.com/license/LICENSE.
*/ */
#ifndef _RTEMS_RTEMS_REGION_H #ifndef _RTEMS_RTEMS_REGION_H

View File

@@ -1,17 +1,22 @@
/** /**
* @file rtems/rtems/timer.inl * @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 * This file contains the static inline implementation of the inlined routines
* from the Timer Manager. * from the Timer Manager.
*/ */
/* /*
* COPYRIGHT (c) 1989-2011. * COPYRIGHT (c) 1989-2011.
* On-Line Applications Research Corporation (OAR). * On-Line Applications Research Corporation (OAR).
* *
* The license and distribution terms for this file may be * The license and distribution terms for this file may be
* found in the file LICENSE in this distribution or at * found in the file LICENSE in this distribution or at
* http://www.rtems.com/license/LICENSE. * http://www.rtems.com/license/LICENSE.
*/ */
#ifndef _RTEMS_RTEMS_TIMER_H #ifndef _RTEMS_RTEMS_TIMER_H