forked from Imagelibrary/rtems
rtems: Doxygen Clean Up Task #2
This commit is contained in:
committed by
Jennifer Averett
parent
00c1cd5f60
commit
d106ab3efd
@@ -1,19 +1,22 @@
|
||||
/**
|
||||
* @file rtems/rtems/asr.h
|
||||
*
|
||||
* @brief Constants and Structures Associated with the Asynchronous Signal Handler
|
||||
* @defgroup ClassicASR ASR Support
|
||||
*
|
||||
* This include file contains all the constants and structures associated
|
||||
* with the Asynchronous Signal Handler. This Handler provides the low-level
|
||||
* support required by the Signal Manager.
|
||||
* @ingroup ClassicRTEMS
|
||||
* @brief Asynchronous Signal Handler
|
||||
*
|
||||
* This include file contains all the constants and structures associated
|
||||
* with the Asynchronous Signal Handler. This Handler provides the low-level
|
||||
* support required by the Signal Manager.
|
||||
*/
|
||||
|
||||
/* COPYRIGHT (c) 1989-2008.
|
||||
* On-Line Applications Research Corporation (OAR).
|
||||
/* COPYRIGHT (c) 1989-2008.
|
||||
* On-Line Applications Research Corporation (OAR).
|
||||
*
|
||||
* The license and distribution terms for this file may be
|
||||
* found in the file LICENSE in this distribution or at
|
||||
* http://www.rtems.com/license/LICENSE.
|
||||
* The license and distribution terms for this file may be
|
||||
* found in the file LICENSE in this distribution or at
|
||||
* http://www.rtems.com/license/LICENSE.
|
||||
*/
|
||||
|
||||
#ifndef _RTEMS_RTEMS_ASR_H
|
||||
|
||||
@@ -1,50 +1,53 @@
|
||||
/**
|
||||
* @file rtems/rtems/barrier.h
|
||||
*
|
||||
* @brief Constants and Structures Associated with the Barrier Manager
|
||||
* @defgroup ClassicBarrier Barriers
|
||||
*
|
||||
* This include file contains all the constants and structures associated
|
||||
* with the Barrier Manager.
|
||||
* @ingroup ClassicRTEMS
|
||||
* @brief Classic API Barrier Manager
|
||||
*
|
||||
* Directives provided are:
|
||||
* This include file contains all the constants and structures associated
|
||||
* with the Barrier Manager.
|
||||
*
|
||||
* - create a barrier
|
||||
* - get an ID of a barrier
|
||||
* - delete a barrier
|
||||
* - wait for a barrier
|
||||
* - signal a barrier
|
||||
* Directives provided are:
|
||||
*
|
||||
* - create a barrier
|
||||
* - get an ID of a barrier
|
||||
* - delete a barrier
|
||||
* - wait for a barrier
|
||||
* - signal a barrier
|
||||
*/
|
||||
|
||||
/* COPYRIGHT (c) 1989-2008.
|
||||
* On-Line Applications Research Corporation (OAR).
|
||||
/* COPYRIGHT (c) 1989-2008.
|
||||
* On-Line Applications Research Corporation (OAR).
|
||||
*
|
||||
* The license and distribution terms for this file may be
|
||||
* found in the file LICENSE in this distribution or at
|
||||
* http://www.rtems.com/license/LICENSE.
|
||||
* The license and distribution terms for this file may be
|
||||
* found in the file LICENSE in this distribution or at
|
||||
* http://www.rtems.com/license/LICENSE.
|
||||
*/
|
||||
|
||||
#ifndef _RTEMS_RTEMS_BARRIER_H
|
||||
#define _RTEMS_RTEMS_BARRIER_H
|
||||
|
||||
/**
|
||||
* @defgroup ClassicBarrier Barriers
|
||||
* @defgroup ClassicBarrier Barriers
|
||||
*
|
||||
* @ingroup ClassicRTEMS
|
||||
* @ingroup ClassicRTEMS
|
||||
*
|
||||
* This encapsulates functionality which implements the Classic API
|
||||
* Barrier Manager.
|
||||
* This encapsulates functionality which implements the Classic API
|
||||
* Barrier Manager.
|
||||
*/
|
||||
/**@{*/
|
||||
|
||||
/**
|
||||
* @brief Instantiate Barrier Data
|
||||
* @brief Instantiate Barrier Data
|
||||
*
|
||||
* Barrier Manager -- Instantiate Data
|
||||
* Barrier Manager -- Instantiate Data
|
||||
*
|
||||
* This constant is defined to extern most of the time when using
|
||||
* this header file. However by defining it to nothing, the data
|
||||
* declared in this header file can be instantiated. This is done
|
||||
* in a single per manager file.
|
||||
* This constant is defined to extern most of the time when using
|
||||
* this header file. However by defining it to nothing, the data
|
||||
* declared in this header file can be instantiated. This is done
|
||||
* in a single per manager file.
|
||||
*/
|
||||
#ifndef RTEMS_BARRIER_EXTERN
|
||||
#define RTEMS_BARRIER_EXTERN extern
|
||||
@@ -87,23 +90,23 @@ RTEMS_BARRIER_EXTERN Objects_Information _Barrier_Information;
|
||||
void _Barrier_Manager_initialization(void);
|
||||
|
||||
/**
|
||||
* @brief RTEMS Create Barrier
|
||||
* @brief RTEMS Create Barrier
|
||||
*
|
||||
* Barrier Manager -- Create a Barrier Instance
|
||||
* Barrier Manager -- Create a Barrier Instance
|
||||
*
|
||||
* This routine implements the rtems_barrier_create directive. The
|
||||
* barrier will have the name name. The starting count for
|
||||
* the barrier is count. The attribute_set determines if
|
||||
* the barrier is global or local and the thread queue
|
||||
* discipline. It returns the id of the created barrier in ID.
|
||||
* This routine implements the rtems_barrier_create directive. The
|
||||
* barrier will have the name name. The starting count for
|
||||
* the barrier is count. The attribute_set determines if
|
||||
* the barrier is global or local and the thread queue
|
||||
* discipline. It returns the id of the created barrier in ID.
|
||||
*
|
||||
* @param[in] name is the name of this barrier instance.
|
||||
* @param[in] attribute_set specifies the attributes of this barrier instance.
|
||||
* @param[in] maximum_waiters is the maximum number of threads which will
|
||||
* be allowed to concurrently wait at the barrier.
|
||||
* @param[out] id will contain the id of this barrier.
|
||||
* @param[in] name is the name of this barrier instance.
|
||||
* @param[in] attribute_set specifies the attributes of this barrier instance.
|
||||
* @param[in] maximum_waiters is the maximum number of threads which will
|
||||
* be allowed to concurrently wait at the barrier.
|
||||
* @param[out] id will contain the id of this barrier.
|
||||
*
|
||||
* @return a status code indicating success or the reason for failure.
|
||||
* @retval a status code indicating success or the reason for failure.
|
||||
*/
|
||||
rtems_status_code rtems_barrier_create(
|
||||
rtems_name name,
|
||||
@@ -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 directive returns the barrier ID associated with name.
|
||||
* If more than one barrier is named name, then the barrier
|
||||
* to which the ID belongs is arbitrary. node indicates the
|
||||
* extent of the search for the ID of the barrier named name.
|
||||
* The search can be limited to a particular node or allowed to
|
||||
* encompass all nodes.
|
||||
* This routine implements the rtems_barrier_ident directive.
|
||||
* This directive returns the barrier ID associated with name.
|
||||
* If more than one barrier is named name, then the barrier
|
||||
* to which the ID belongs is arbitrary. node indicates the
|
||||
* extent of the search for the ID of the barrier named name.
|
||||
* The search can be limited to a particular node or allowed to
|
||||
* encompass all nodes.
|
||||
*
|
||||
* @param[in] name is the name of this barrier instance.
|
||||
* @param[out] id will contain the id of this barrier.
|
||||
* @param[in] name is the name of this barrier instance.
|
||||
* @param[out] id will contain the id of this barrier.
|
||||
*
|
||||
* @return a status code indicating success or the reason for failure.
|
||||
* @retval a status code indicating success or the reason for failure.
|
||||
*/
|
||||
rtems_status_code rtems_barrier_ident(
|
||||
rtems_name name,
|
||||
@@ -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
|
||||
* barrier indicated by @a id is deleted. The barrier is freed back to the
|
||||
* inactive barrier chain.
|
||||
* This routine implements the rtems_barrier_delete directive. The
|
||||
* barrier indicated by @a id is deleted. The barrier is freed back to the
|
||||
* inactive barrier chain.
|
||||
*
|
||||
*
|
||||
* @param[in] id indicates the barrier to delete
|
||||
* @param[in] id indicates the barrier to delete
|
||||
*
|
||||
* @return a status code indicating success or the reason for failure.
|
||||
* @retval a status code indicating success or the reason for failure.
|
||||
*/
|
||||
rtems_status_code rtems_barrier_delete(
|
||||
rtems_id id
|
||||
);
|
||||
|
||||
/**
|
||||
* @brief RTEMS Barrier Wait
|
||||
* @brief RTEMS Barrier Wait
|
||||
*
|
||||
* This routine implements the rtems_barrier_wait directive. It
|
||||
* attempts to wait at the barrier associated with @a id. The calling task
|
||||
* may block waiting for the barrier with an optional timeout of @a timeout
|
||||
* clock ticks.
|
||||
* This routine implements the rtems_barrier_wait directive. It
|
||||
* attempts to wait at the barrier associated with @a id. The calling task
|
||||
* may block waiting for the barrier with an optional timeout of @a timeout
|
||||
* clock ticks.
|
||||
*
|
||||
* @param[in] id indicates the barrier to wait at.
|
||||
* @param[in] timeout is the maximum length of time in ticks the calling
|
||||
* thread is willing to block.
|
||||
* @param[in] id indicates the barrier to wait at.
|
||||
* @param[in] timeout is the maximum length of time in ticks the calling
|
||||
* thread is willing to block.
|
||||
*
|
||||
* @return a status code indicating success or the reason for failure.
|
||||
* @retval a status code indicating success or the reason for failure.
|
||||
*/
|
||||
rtems_status_code rtems_barrier_wait(
|
||||
rtems_id id,
|
||||
@@ -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
|
||||
* unblocks all of the threads waiting on the barrier associated with
|
||||
* @a id. The number of threads unblocked is returned in @a released.
|
||||
* This routine implements the rtems_barrier_release directive. It
|
||||
* unblocks all of the threads waiting on the barrier associated with
|
||||
* @a id. The number of threads unblocked is returned in @a released.
|
||||
*
|
||||
*
|
||||
* @param[in] id indicates the barrier to wait at.
|
||||
* @param[out] released will contain the number of threads unblocked.
|
||||
* @param[in] id indicates the barrier to wait at.
|
||||
* @param[out] released will contain the number of threads unblocked.
|
||||
*
|
||||
* @return a status code indicating success or the reason for failure.
|
||||
* @retval a status code indicating success or the reason for failure.
|
||||
*/
|
||||
rtems_status_code rtems_barrier_release(
|
||||
rtems_id id,
|
||||
@@ -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
|
||||
* status code specified.
|
||||
* This function returns a RTEMS status code based on the barrier
|
||||
* status code specified.
|
||||
*
|
||||
* @param[in] the_status is the SuperCore Barrier status to translate.
|
||||
* @param[in] the_status is the SuperCore Barrier status to translate.
|
||||
*
|
||||
* @return a status code indicating success or the reason for failure.
|
||||
* @retval a status code indicating success or the reason for failure.
|
||||
*/
|
||||
rtems_status_code _Barrier_Translate_core_barrier_return_code (
|
||||
CORE_barrier_Status the_status
|
||||
|
||||
@@ -1,27 +1,30 @@
|
||||
/**
|
||||
* @file rtems/rtems/clock.h
|
||||
*
|
||||
* @brief Constants and Structures Associated with the Clock Manager
|
||||
* @defgroup ClassicClock Clocks
|
||||
*
|
||||
* This include file contains all the constants and structures associated
|
||||
* with the Clock Manager. This manager provides facilities to set, obtain,
|
||||
* and continually update the current date and time.
|
||||
* @ingroup ClassicRTEMS
|
||||
* @brief Clock Manager API
|
||||
*
|
||||
* This manager provides directives to:
|
||||
* This include file contains all the constants and structures associated
|
||||
* with the Clock Manager. This manager provides facilities to set, obtain,
|
||||
* and continually update the current date and time.
|
||||
*
|
||||
* - set the current date and time
|
||||
* - obtain the current date and time
|
||||
* - set the nanoseconds since last clock tick handler
|
||||
* - announce a clock tick
|
||||
* - obtain the system uptime
|
||||
* This manager provides directives to:
|
||||
*
|
||||
* - set the current date and time
|
||||
* - obtain the current date and time
|
||||
* - set the nanoseconds since last clock tick handler
|
||||
* - announce a clock tick
|
||||
* - obtain the system uptime
|
||||
*/
|
||||
|
||||
/* COPYRIGHT (c) 1989-2008.
|
||||
* On-Line Applications Research Corporation (OAR).
|
||||
/* COPYRIGHT (c) 1989-2008.
|
||||
* On-Line Applications Research Corporation (OAR).
|
||||
*
|
||||
* The license and distribution terms for this file may be
|
||||
* found in the file LICENSE in this distribution or at
|
||||
* http://www.rtems.com/license/LICENSE.
|
||||
* The license and distribution terms for this file may be
|
||||
* found in the file LICENSE in this distribution or at
|
||||
* http://www.rtems.com/license/LICENSE.
|
||||
*/
|
||||
|
||||
#ifndef _RTEMS_RTEMS_CLOCK_H
|
||||
@@ -70,21 +73,21 @@ typedef Watchdog_Nanoseconds_since_last_tick_routine
|
||||
rtems_nanoseconds_extension_routine;
|
||||
|
||||
/**
|
||||
* @brief Obtain Current Time of Day
|
||||
* @brief Obtain Current Time of Day
|
||||
*
|
||||
* This routine implements the rtems_clock_get directive. It returns
|
||||
* one of the following:
|
||||
* + current time of day
|
||||
* + seconds since epoch
|
||||
* + ticks since boot
|
||||
* + ticks per second
|
||||
* This routine implements the rtems_clock_get directive. It returns
|
||||
* one of the following:
|
||||
* + current time of day
|
||||
* + seconds since epoch
|
||||
* + ticks since boot
|
||||
* + ticks per second
|
||||
*
|
||||
* @param[in] option is the format of time to return
|
||||
* @param[in] time_buffer points to the output area
|
||||
* @param[in] option is the format of time to return
|
||||
* @param[in] time_buffer points to the output area
|
||||
*
|
||||
* @return This method returns RTEMS_SUCCESSFUL if there was not an
|
||||
* error. Otherwise, a status code is returned indicating the
|
||||
* source of the error.
|
||||
* @retval This method returns RTEMS_SUCCESSFUL if there was not an
|
||||
* error. Otherwise, a status code is returned indicating the
|
||||
* source of the error.
|
||||
*/
|
||||
rtems_status_code rtems_clock_get(
|
||||
rtems_clock_get_options option,
|
||||
@@ -92,189 +95,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
|
||||
* the current time of day in the format defined by RTEID.
|
||||
* This routine implements the rtems_clock_get_tod directive. It returns
|
||||
* the current time of day in the format defined by RTEID.
|
||||
*
|
||||
* Clock Manager - rtems_clock_get_tod
|
||||
* Clock Manager - rtems_clock_get_tod
|
||||
*
|
||||
* @param[in] time_buffer points to the time of day structure
|
||||
* @param[in] time_buffer points to the time of day structure
|
||||
*
|
||||
* @return This method returns RTEMS_SUCCESSFUL if there was not an
|
||||
* error. Otherwise, a status code is returned indicating the
|
||||
* source of the error. If successful, the time_buffer will
|
||||
* be filled in with the current time of day.
|
||||
* @retval This method returns RTEMS_SUCCESSFUL if there was not an
|
||||
* error. Otherwise, a status code is returned indicating the
|
||||
* source of the error. If successful, the time_buffer will
|
||||
* be filled in with the current time of day.
|
||||
*/
|
||||
rtems_status_code rtems_clock_get_tod(
|
||||
rtems_time_of_day *time_buffer
|
||||
);
|
||||
|
||||
/**
|
||||
* @brief Obtain TOD in struct timeval Format
|
||||
* @brief Obtain TOD in struct timeval Format
|
||||
*
|
||||
* This routine implements the rtems_clock_get_tod_timeval
|
||||
* directive.
|
||||
* This routine implements the rtems_clock_get_tod_timeval
|
||||
* directive.
|
||||
*
|
||||
* @param[in] time points to the struct timeval variable to fill in
|
||||
* @param[in] time points to the struct timeval variable to fill in
|
||||
*
|
||||
* @return This method returns RTEMS_SUCCESSFUL if there was not an
|
||||
* error. Otherwise, a status code is returned indicating the
|
||||
* source of the error. If successful, the time will
|
||||
* be filled in with the current time of day.
|
||||
* @retval This method returns RTEMS_SUCCESSFUL if there was not an
|
||||
* error. Otherwise, a status code is returned indicating the
|
||||
* source of the error. If successful, the time will
|
||||
* be filled in with the current time of day.
|
||||
*/
|
||||
rtems_status_code rtems_clock_get_tod_timeval(
|
||||
struct timeval *time
|
||||
);
|
||||
|
||||
/**
|
||||
* @brief Obtain Seconds Since Epoch
|
||||
* @brief Obtain Seconds Since Epoch
|
||||
*
|
||||
* This routine implements the rtems_clock_get_seconds_since_epoch
|
||||
* directive.
|
||||
* This routine implements the rtems_clock_get_seconds_since_epoch
|
||||
* directive.
|
||||
*
|
||||
* @param[in] the_interval points to the interval variable to fill in
|
||||
* @param[in] the_interval points to the interval variable to fill in
|
||||
*
|
||||
* @return This method returns RTEMS_SUCCESSFUL if there was not an
|
||||
* error. Otherwise, a status code is returned indicating the
|
||||
* source of the error. If successful, the time_buffer will
|
||||
* be filled in with the current time of day.
|
||||
* @retval This method returns RTEMS_SUCCESSFUL if there was not an
|
||||
* error. Otherwise, a status code is returned indicating the
|
||||
* source of the error. If successful, the time_buffer will
|
||||
* be filled in with the current time of day.
|
||||
*/
|
||||
rtems_status_code rtems_clock_get_seconds_since_epoch(
|
||||
rtems_interval *the_interval
|
||||
);
|
||||
|
||||
/**
|
||||
* @brief Obtain Ticks Since Boot
|
||||
* @brief Obtain Ticks Since Boot
|
||||
*
|
||||
* This routine implements the rtems_clock_get_ticks_since_boot
|
||||
* directive.
|
||||
* This routine implements the rtems_clock_get_ticks_since_boot
|
||||
* directive.
|
||||
*
|
||||
* @return This method returns the number of ticks since boot. It cannot
|
||||
* fail since RTEMS always keeps a running count of ticks since boot.
|
||||
* @retval This method returns the number of ticks since boot. It cannot
|
||||
* fail since RTEMS always keeps a running count of ticks since boot.
|
||||
*/
|
||||
rtems_interval rtems_clock_get_ticks_since_boot(void);
|
||||
|
||||
/**
|
||||
* @brief Obtain Ticks Per Seconds
|
||||
* @brief Obtain Ticks Per Seconds
|
||||
*
|
||||
* This routine implements the rtems_clock_get_ticks_per_second
|
||||
* directive.
|
||||
* This routine implements the rtems_clock_get_ticks_per_second
|
||||
* directive.
|
||||
*
|
||||
* @return This method returns the number of ticks since boot. It cannot
|
||||
* fail since RTEMS is always configured to know the number of
|
||||
* ticks per second.
|
||||
* @retval This method returns the number of ticks since boot. It cannot
|
||||
* fail since RTEMS is always configured to know the number of
|
||||
* ticks per second.
|
||||
*/
|
||||
rtems_interval rtems_clock_get_ticks_per_second(void);
|
||||
|
||||
/**
|
||||
* @brief Set the Current TOD
|
||||
* @brief Set the Current TOD
|
||||
*
|
||||
* This routine implements the rtems_clock_set directive. It sets
|
||||
* the current time of day to that in the time_buffer record.
|
||||
* This routine implements the rtems_clock_set directive. It sets
|
||||
* the current time of day to that in the time_buffer record.
|
||||
*
|
||||
* @param[in] time_buffer points to the new TOD
|
||||
* @param[in] time_buffer points to the new TOD
|
||||
*
|
||||
* @return This method returns RTEMS_SUCCESSFUL if there was not an
|
||||
* error. Otherwise, a status code is returned indicating the
|
||||
* source of the error.
|
||||
* @retval This method returns RTEMS_SUCCESSFUL if there was not an
|
||||
* error. Otherwise, a status code is returned indicating the
|
||||
* source of the error.
|
||||
*
|
||||
* @note Activities scheduled based upon the current time of day
|
||||
* may be executed immediately if the time is moved forward.
|
||||
* @note Activities scheduled based upon the current time of day
|
||||
* may be executed immediately if the time is moved forward.
|
||||
*/
|
||||
rtems_status_code rtems_clock_set(
|
||||
const rtems_time_of_day *time_buffer
|
||||
);
|
||||
|
||||
/**
|
||||
* @brief Announce a Clock Tick
|
||||
* @brief Announce a Clock Tick
|
||||
*
|
||||
* This routine implements the rtems_clock_tick directive. It is invoked
|
||||
* to inform RTEMS of the occurrence of a clock tick.
|
||||
* This routine implements the rtems_clock_tick directive. It is invoked
|
||||
* to inform RTEMS of the occurrence of a clock tick.
|
||||
*
|
||||
* @return This directive always returns RTEMS_SUCCESSFUL.
|
||||
* @retval This directive always returns RTEMS_SUCCESSFUL.
|
||||
*
|
||||
* @note This method is typically called from an ISR and is the basis
|
||||
* for all timeouts and delays. This routine only works for leap-years
|
||||
* through 2099.
|
||||
* @note This method is typically called from an ISR and is the basis
|
||||
* for all timeouts and delays. This routine only works for leap-years
|
||||
* through 2099.
|
||||
*/
|
||||
rtems_status_code rtems_clock_tick( void );
|
||||
|
||||
/**
|
||||
* @brief Set the BSP specific Nanoseconds Extension
|
||||
* @brief Set the BSP specific Nanoseconds Extension
|
||||
*
|
||||
* Clock Manager
|
||||
* Clock Manager
|
||||
*
|
||||
* This directive sets the BSP provided nanoseconds since last tick
|
||||
* extension.
|
||||
* This directive sets the BSP provided nanoseconds since last tick
|
||||
* extension.
|
||||
*
|
||||
* @param[in] routine is a pointer to the extension routine
|
||||
* @param[in] routine is a pointer to the extension routine
|
||||
*
|
||||
* @return This method returns RTEMS_SUCCESSFUL if there was not an
|
||||
* error. Otherwise, a status code is returned indicating the
|
||||
* source of the error.
|
||||
* @return This method returns RTEMS_SUCCESSFUL if there was not an
|
||||
* error. Otherwise, a status code is returned indicating the
|
||||
* source of the error.
|
||||
*/
|
||||
rtems_status_code rtems_clock_set_nanoseconds_extension(
|
||||
rtems_nanoseconds_extension_routine routine
|
||||
);
|
||||
|
||||
/**
|
||||
* @brief Obtain the System Uptime
|
||||
* @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
|
||||
* error. Otherwise, a status code is returned indicating the
|
||||
* source of the error. If successful, the uptime will be
|
||||
* filled in.
|
||||
* @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 uptime will be
|
||||
* filled in.
|
||||
*
|
||||
* Clock Manager - get uptime
|
||||
* Clock Manager - get uptime
|
||||
*/
|
||||
rtems_status_code rtems_clock_get_uptime(
|
||||
struct timespec *uptime
|
||||
);
|
||||
|
||||
/**
|
||||
* @brief Gets the System Uptime in the Struct Timeval Format
|
||||
* @brief Gets the System Uptime in the Struct Timeval Format
|
||||
*
|
||||
* @param[out] 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 );
|
||||
|
||||
/**
|
||||
* @brief Returns the system uptime in seconds.
|
||||
* @brief Returns the system uptime in seconds.
|
||||
*
|
||||
* @return The system uptime in seconds.
|
||||
* @retval The system uptime in seconds.
|
||||
*/
|
||||
time_t rtems_clock_get_uptime_seconds( void );
|
||||
|
||||
/**
|
||||
* @brief TOD Validate
|
||||
* @brief TOD Validate
|
||||
*
|
||||
* This support function returns true if @a the_tod contains
|
||||
* a valid time of day, and false otherwise.
|
||||
* This support function returns true if @a the_tod contains
|
||||
* a valid time of day, and false otherwise.
|
||||
*
|
||||
* @param[in] the_tod is the TOD structure to validate
|
||||
* @param[in] the_tod is the TOD structure to validate
|
||||
*
|
||||
* @return This method returns true if the TOD is valid and false otherwise.
|
||||
* @retval This method returns true if the TOD is valid and false otherwise.
|
||||
*
|
||||
* @note This routine only works for leap-years through 2099.
|
||||
* @note This routine only works for leap-years through 2099.
|
||||
*/
|
||||
bool _TOD_Validate(
|
||||
const rtems_time_of_day *the_tod
|
||||
);
|
||||
|
||||
/**
|
||||
* @brief TOD to Seconds
|
||||
* @brief TOD to Seconds
|
||||
*
|
||||
* This function returns the number seconds between the epoch and @a the_tod.
|
||||
* This function returns the number seconds between the epoch and @a the_tod.
|
||||
*
|
||||
* @param[in] the_tod is the TOD structure to convert to seconds
|
||||
* @param[in] the_tod is the TOD structure to convert to seconds
|
||||
*
|
||||
* @return This method returns the number of seconds since epoch represented
|
||||
* by @a the_tod
|
||||
* @retval This method returns the number of seconds since epoch represented
|
||||
* by @a the_tod
|
||||
*/
|
||||
Watchdog_Interval _TOD_To_seconds(
|
||||
const rtems_time_of_day *the_tod
|
||||
|
||||
@@ -1,25 +1,28 @@
|
||||
/**
|
||||
* @file rtems/rtems/event.h
|
||||
*
|
||||
* @brief Information Related to the Event Manager
|
||||
* @defgroup ClassicEvent Events
|
||||
*
|
||||
* This include file contains the information pertaining to the Event
|
||||
* Manager. This manager provides a high performance method of communication
|
||||
* and synchronization.
|
||||
* @ingroup ClassicRTEMS
|
||||
* @brief Information Related to Event Manager
|
||||
*
|
||||
* Directives provided are:
|
||||
* This include file contains the information pertaining to the Event
|
||||
* Manager. This manager provides a high performance method of communication
|
||||
* and synchronization.
|
||||
*
|
||||
* - send an event set to a task
|
||||
* - receive event condition
|
||||
* Directives provided are:
|
||||
*
|
||||
* - send an event set to a task
|
||||
* - receive event condition
|
||||
*
|
||||
*/
|
||||
|
||||
/* COPYRIGHT (c) 1989-2008.
|
||||
* On-Line Applications Research Corporation (OAR).
|
||||
/* COPYRIGHT (c) 1989-2008.
|
||||
* On-Line Applications Research Corporation (OAR).
|
||||
*
|
||||
* The license and distribution terms for this file may be
|
||||
* found in the file LICENSE in this distribution or at
|
||||
* http://www.rtems.com/license/LICENSE.
|
||||
* The license and distribution terms for this file may be
|
||||
* found in the file LICENSE in this distribution or at
|
||||
* http://www.rtems.com/license/LICENSE.
|
||||
*/
|
||||
|
||||
#ifndef _RTEMS_RTEMS_EVENT_H
|
||||
@@ -100,38 +103,38 @@ extern "C" {
|
||||
*/
|
||||
|
||||
/**
|
||||
* @brief Sends an Event Set to the Target Task
|
||||
* @brief Sends an Event Set to the Target Task
|
||||
*
|
||||
* This directive sends an event set @a event_in to the task specified by
|
||||
* @a id.
|
||||
* This directive sends an event set @a event_in to the task specified by
|
||||
* @a id.
|
||||
*
|
||||
* Based upon the state of the target task, one of the following situations
|
||||
* applies. The target task is
|
||||
* - blocked waiting for events.
|
||||
* If the waiting task's input event condition is
|
||||
* - satisfied, then the task is made ready for execution.
|
||||
* - not satisfied, then the event set is posted but left pending and the
|
||||
* task remains blocked.
|
||||
* - not waiting for events.
|
||||
* - The event set is posted and left pending.
|
||||
* Based upon the state of the target task, one of the following situations
|
||||
* applies. The target task is
|
||||
* - blocked waiting for events.
|
||||
* If the waiting task's input event condition is
|
||||
* - satisfied, then the task is made ready for execution.
|
||||
* - not satisfied, then the event set is posted but left pending and the
|
||||
* task remains blocked.
|
||||
* - not waiting for events.
|
||||
* - The event set is posted and left pending.
|
||||
*
|
||||
* Identical events sent to a task are not queued. In other words, the second,
|
||||
* and subsequent, posting of an event to a task before it can perform an
|
||||
* rtems_event_receive() has no effect.
|
||||
* Identical events sent to a task are not queued. In other words, the second,
|
||||
* and subsequent, posting of an event to a task before it can perform an
|
||||
* rtems_event_receive() has no effect.
|
||||
*
|
||||
* The calling task will be preempted if it has preemption enabled and a
|
||||
* higher priority task is unblocked as the result of this directive.
|
||||
* The calling task will be preempted if it has preemption enabled and a
|
||||
* higher priority task is unblocked as the result of this directive.
|
||||
*
|
||||
* Sending an event set to a global task which does not reside on the local
|
||||
* node will generate a request telling the remote node to send the event set
|
||||
* to the appropriate task.
|
||||
* Sending an event set to a global task which does not reside on the local
|
||||
* node will generate a request telling the remote node to send the event set
|
||||
* to the appropriate task.
|
||||
*
|
||||
* @param[in] id Identifier of the target task. Specifying @ref RTEMS_SELF
|
||||
* results in the event set being sent to the calling task.
|
||||
* @param[in] event_in Event set sent to the target task.
|
||||
* @param[in] id Identifier of the target task. Specifying @ref RTEMS_SELF
|
||||
* results in the event set being sent to the calling task.
|
||||
* @param[in] event_in Event set sent to the target task.
|
||||
*
|
||||
* @retval RTEMS_SUCCESSFUL Successful operation.
|
||||
* @retval RTEMS_INVALID_ID Invalid task identifier.
|
||||
* @retval RTEMS_SUCCESSFUL Successful operation.
|
||||
* @retval RTEMS_INVALID_ID Invalid task identifier.
|
||||
*/
|
||||
rtems_status_code rtems_event_send (
|
||||
rtems_id id,
|
||||
@@ -139,65 +142,65 @@ rtems_status_code rtems_event_send (
|
||||
);
|
||||
|
||||
/**
|
||||
* @brief Receives pending events.
|
||||
* @brief Receives pending events.
|
||||
*
|
||||
* This directive attempts to receive the event condition specified in
|
||||
* @a event_in. If @a event_in is set to @ref RTEMS_PENDING_EVENTS, then the
|
||||
* current pending events are returned in @a event_out and left pending. The
|
||||
* @aref RTEMS_WAIT and @aref RTEMS_NO_WAIT options in the @a option_set
|
||||
* parameter are used to specify whether or not the task is willing to wait
|
||||
* for the event condition to be satisfied. The @ref RTEMS_EVENT_ANY and @ref
|
||||
* RTEMS_EVENT_ALL are used in the @a option_set parameter to specify whether
|
||||
* at least a single event or the complete event set is necessary to satisfy
|
||||
* the event condition. The @a event_out parameter is returned to the calling
|
||||
* task with the value that corresponds to the events in @a event_in that were
|
||||
* satisfied.
|
||||
* This directive attempts to receive the event condition specified in
|
||||
* @a event_in. If @a event_in is set to @ref RTEMS_PENDING_EVENTS, then the
|
||||
* current pending events are returned in @a event_out and left pending. The
|
||||
* @aref RTEMS_WAIT and @aref RTEMS_NO_WAIT options in the @a option_set
|
||||
* parameter are used to specify whether or not the task is willing to wait
|
||||
* for the event condition to be satisfied. The @ref RTEMS_EVENT_ANY and @ref
|
||||
* RTEMS_EVENT_ALL are used in the @a option_set parameter to specify whether
|
||||
* at least a single event or the complete event set is necessary to satisfy
|
||||
* the event condition. The @a event_out parameter is returned to the calling
|
||||
* task with the value that corresponds to the events in @a event_in that were
|
||||
* satisfied.
|
||||
*
|
||||
* A task can determine the pending event set by using a value of
|
||||
* @ref RTEMS_PENDING_EVENTS for the input event set @a event_in. The pending
|
||||
* events are returned to the calling task but the event set is left
|
||||
* unaltered.
|
||||
* A task can determine the pending event set by using a value of
|
||||
* @ref RTEMS_PENDING_EVENTS for the input event set @a event_in. The pending
|
||||
* events are returned to the calling task but the event set is left
|
||||
* unaltered.
|
||||
*
|
||||
* A task can receive all of the currently pending events by using the a value
|
||||
* of @ref RTEMS_ALL_EVENTS for the input event set @a event_in and
|
||||
* @ref RTEMS_NO_WAIT | @ref RTEMS_EVENT_ANY for the option set @a option_set.
|
||||
* The pending events are returned to the calling task and the event set is
|
||||
* cleared. If no events are pending then the @ref RTEMS_UNSATISFIED status
|
||||
* code will be returned.
|
||||
* A task can receive all of the currently pending events by using the a value
|
||||
* of @ref RTEMS_ALL_EVENTS for the input event set @a event_in and
|
||||
* @ref RTEMS_NO_WAIT | @ref RTEMS_EVENT_ANY for the option set @a option_set.
|
||||
* The pending events are returned to the calling task and the event set is
|
||||
* cleared. If no events are pending then the @ref RTEMS_UNSATISFIED status
|
||||
* code will be returned.
|
||||
*
|
||||
* If pending events satisfy the event condition, then @a event_out is set to
|
||||
* the satisfied events and the pending events in the event condition are
|
||||
* cleared. If the event condition is not satisfied and @ref RTEMS_NO_WAIT is
|
||||
* specified, then @a event_out is set to the currently satisfied events. If
|
||||
* the calling task chooses to wait, then it will block waiting for the event
|
||||
* condition.
|
||||
* If pending events satisfy the event condition, then @a event_out is set to
|
||||
* the satisfied events and the pending events in the event condition are
|
||||
* cleared. If the event condition is not satisfied and @ref RTEMS_NO_WAIT is
|
||||
* specified, then @a event_out is set to the currently satisfied events. If
|
||||
* the calling task chooses to wait, then it will block waiting for the event
|
||||
* condition.
|
||||
*
|
||||
* If the calling task must wait for the event condition to be satisfied, then
|
||||
* the timeout parameter is used to specify the maximum interval to wait. If
|
||||
* it is set to @ref RTEMS_NO_TIMEOUT, then the calling task will wait forever.
|
||||
* If the calling task must wait for the event condition to be satisfied, then
|
||||
* the timeout parameter is used to specify the maximum interval to wait. If
|
||||
* it is set to @ref RTEMS_NO_TIMEOUT, then the calling task will wait forever.
|
||||
*
|
||||
* This directive only affects the events specified in @a event_in. Any
|
||||
* pending events that do not correspond to any of the events specified in
|
||||
* @a event_in will be left pending.
|
||||
* This directive only affects the events specified in @a event_in. Any
|
||||
* pending events that do not correspond to any of the events specified in
|
||||
* @a event_in will be left pending.
|
||||
*
|
||||
* A clock tick is required to support the wait with time out functionality of
|
||||
* this directive.
|
||||
* A clock tick is required to support the wait with time out functionality of
|
||||
* this directive.
|
||||
*
|
||||
* @param[in] event_in Set of requested events (input events).
|
||||
* @param[in] option_set Use a bitwise or of the following options
|
||||
* - @ref RTEMS_WAIT - task will wait for event (default),
|
||||
* - @ref RTEMS_NO_WAIT - task should not wait,
|
||||
* - @ref RTEMS_EVENT_ALL - return after all events (default), and
|
||||
* - @ref RTEMS_EVENT_ANY - return after any events.
|
||||
* @param[in] ticks Time out in ticks. Use @ref RTEMS_NO_TIMEOUT to wait
|
||||
* without a time out (potentially forever).
|
||||
* @param[out] event_out Set of received events (output events).
|
||||
* @param[in] event_in Set of requested events (input events).
|
||||
* @param[in] option_set Use a bitwise or of the following options
|
||||
* - @ref RTEMS_WAIT - task will wait for event (default),
|
||||
* - @ref RTEMS_NO_WAIT - task should not wait,
|
||||
* - @ref RTEMS_EVENT_ALL - return after all events (default), and
|
||||
* - @ref RTEMS_EVENT_ANY - return after any events.
|
||||
* @param[in] ticks Time out in ticks. Use @ref RTEMS_NO_TIMEOUT to wait
|
||||
* without a time out (potentially forever).
|
||||
* @param[out] event_out Set of received events (output events).
|
||||
*
|
||||
* @retval RTEMS_SUCCESSFUL Successful operation.
|
||||
* @retval RTEMS_UNSATISFIED Input events not satisfied (only with the
|
||||
* @ref RTEMS_NO_WAIT option).
|
||||
* @retval RTEMS_INVALID_ADDRESS The @a event_out pointer is @c NULL.
|
||||
* @retval RTEMS_TIMEOUT Timed out waiting for events.
|
||||
* @retval RTEMS_SUCCESSFUL Successful operation.
|
||||
* @retval RTEMS_UNSATISFIED Input events not satisfied (only with the
|
||||
* @ref RTEMS_NO_WAIT option).
|
||||
* @retval RTEMS_INVALID_ADDRESS The @a event_out pointer is @c NULL.
|
||||
* @retval RTEMS_TIMEOUT Timed out waiting for events.
|
||||
*/
|
||||
rtems_status_code rtems_event_receive (
|
||||
rtems_event_set event_in,
|
||||
|
||||
@@ -1,16 +1,21 @@
|
||||
/**
|
||||
* @file rtems/rtems/eventmp.h
|
||||
*
|
||||
* This include file contains all the constants and structures associated
|
||||
* with the Multiprocessing Support in the Event Manager.
|
||||
* @defgroup ClassicEventMP Event MP Support
|
||||
*
|
||||
* @ingroup ClassicRTEMS
|
||||
* @brief Event Manager MP Support
|
||||
*
|
||||
* This include file contains all the constants and structures associated
|
||||
* with the Multiprocessing Support in the Event Manager.
|
||||
*/
|
||||
|
||||
/* COPYRIGHT (c) 1989-2008.
|
||||
* On-Line Applications Research Corporation (OAR).
|
||||
/* COPYRIGHT (c) 1989-2008.
|
||||
* On-Line Applications Research Corporation (OAR).
|
||||
*
|
||||
* The license and distribution terms for this file may be
|
||||
* found in the file LICENSE in this distribution or at
|
||||
* http://www.rtems.com/license/LICENSE.
|
||||
* The license and distribution terms for this file may be
|
||||
* found in the file LICENSE in this distribution or at
|
||||
* http://www.rtems.com/license/LICENSE.
|
||||
*/
|
||||
|
||||
#ifndef _RTEMS_RTEMS_EVENTMP_H
|
||||
|
||||
@@ -1,19 +1,22 @@
|
||||
/**
|
||||
* @file rtems/rtems/eventset.h
|
||||
*
|
||||
* @brief Information Related to the Event Sets Handler
|
||||
* @defgroup ClassicEventSet Event Set
|
||||
*
|
||||
* This include file contains the information pertaining to the
|
||||
* Event Sets Handler. This handler provides methods for the manipulation
|
||||
* of event sets which will be sent and received by tasks.
|
||||
* @ingroup ClassicRTEMS
|
||||
* @brief Event Sets Handler
|
||||
*
|
||||
* This include file contains the information pertaining to the
|
||||
* Event Sets Handler. This handler provides methods for the manipulation
|
||||
* of event sets which will be sent and received by tasks.
|
||||
*/
|
||||
|
||||
/* COPYRIGHT (c) 1989-2008.
|
||||
* On-Line Applications Research Corporation (OAR).
|
||||
/* COPYRIGHT (c) 1989-2008.
|
||||
* On-Line Applications Research Corporation (OAR).
|
||||
*
|
||||
* The license and distribution terms for this file may be
|
||||
* found in the file LICENSE in this distribution or at
|
||||
* http://www.rtems.com/license/LICENSE.
|
||||
* The license and distribution terms for this file may be
|
||||
* found in the file LICENSE in this distribution or at
|
||||
* http://www.rtems.com/license/LICENSE.
|
||||
*/
|
||||
|
||||
#ifndef _RTEMS_RTEMS_EVENTSET_H
|
||||
|
||||
@@ -1,18 +1,21 @@
|
||||
/**
|
||||
* @file rtems/rtems/intr.h
|
||||
*
|
||||
* @brief Header file for the Interrupt Manager.
|
||||
* @defgroup ClassicINTR Interrupts
|
||||
*
|
||||
* This include file contains all the constants and structures associated with
|
||||
* the Interrupt Manager.
|
||||
* @ingroup ClassicRTEMS
|
||||
* @brief Header file for Interrupt Manager
|
||||
*
|
||||
* This include file contains all the constants and structures associated with
|
||||
* the Interrupt Manager.
|
||||
*/
|
||||
|
||||
/* COPYRIGHT (c) 1989-2008.
|
||||
* On-Line Applications Research Corporation (OAR).
|
||||
/* COPYRIGHT (c) 1989-2008.
|
||||
* On-Line Applications Research Corporation (OAR).
|
||||
*
|
||||
* The license and distribution terms for this file may be
|
||||
* found in the file LICENSE in this distribution or at
|
||||
* http://www.rtems.com/license/LICENSE.
|
||||
* The license and distribution terms for this file may be
|
||||
* found in the file LICENSE in this distribution or at
|
||||
* http://www.rtems.com/license/LICENSE.
|
||||
*/
|
||||
|
||||
#ifndef _RTEMS_RTEMS_INTR_H
|
||||
@@ -63,17 +66,17 @@ typedef rtems_isr ( *rtems_isr_entry )(
|
||||
);
|
||||
|
||||
/**
|
||||
* @brief RTEMS Interrupt Catch
|
||||
* @brief RTEMS Interrupt Catch
|
||||
*
|
||||
* This directive installs @a new_isr_handler as the RTEMS interrupt service
|
||||
* routine for the interrupt vector with number @a vector. The previous RTEMS
|
||||
* interrupt service routine is returned in @a old_isr_handler.
|
||||
* This directive installs @a new_isr_handler as the RTEMS interrupt service
|
||||
* routine for the interrupt vector with number @a vector. The previous RTEMS
|
||||
* interrupt service routine is returned in @a old_isr_handler.
|
||||
*
|
||||
* @param[in] new_isr_handler is the address of interrupt service routine
|
||||
* @param[in] vector is the interrupt vector number
|
||||
* @param[in] old_isr_handler address at which to store previous ISR address
|
||||
* @param[in] new_isr_handler is the address of interrupt service routine
|
||||
* @param[in] vector is the interrupt vector number
|
||||
* @param[in] old_isr_handler address at which to store previous ISR address
|
||||
*
|
||||
* @return RTEMS_SUCCESSFUL and *old_isr_handler filled with previous ISR
|
||||
* @retval RTEMS_SUCCESSFUL and *old_isr_handler filled with previous ISR
|
||||
* address
|
||||
*/
|
||||
rtems_status_code rtems_interrupt_catch(
|
||||
|
||||
@@ -1,30 +1,33 @@
|
||||
/**
|
||||
* @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
|
||||
* with the Message Queue Manager. This manager provides a mechanism for
|
||||
* communication and synchronization between tasks using messages.
|
||||
* @ingroup ClassicRTEMS
|
||||
* @brief Message Queue Manager
|
||||
*
|
||||
* 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
|
||||
* - get ID of a queue
|
||||
* - delete a queue
|
||||
* - put a message at the rear of a queue
|
||||
* - put a message at the front of a queue
|
||||
* - broadcast N messages to a queue
|
||||
* - receive message from a queue
|
||||
* - flush all messages on a queue
|
||||
* Directives provided are:
|
||||
*
|
||||
* - create a queue
|
||||
* - get ID of a queue
|
||||
* - delete a queue
|
||||
* - put a message at the rear of a queue
|
||||
* - put a message at the front of a queue
|
||||
* - broadcast N messages to a queue
|
||||
* - receive message from a queue
|
||||
* - flush all messages on a queue
|
||||
*/
|
||||
|
||||
/* COPYRIGHT (c) 1989-2008.
|
||||
* On-Line Applications Research Corporation (OAR).
|
||||
/* COPYRIGHT (c) 1989-2008.
|
||||
* On-Line Applications Research Corporation (OAR).
|
||||
*
|
||||
* The license and distribution terms for this file may be
|
||||
* found in the file LICENSE in this distribution or at
|
||||
* http://www.rtems.com/license/LICENSE.
|
||||
* The license and distribution terms for this file may be
|
||||
* found in the file LICENSE in this distribution or at
|
||||
* http://www.rtems.com/license/LICENSE.
|
||||
*/
|
||||
|
||||
#ifndef _RTEMS_RTEMS_MESSAGE_H
|
||||
@@ -106,25 +109,25 @@ RTEMS_MESSAGE_EXTERN Objects_Information _Message_queue_Information;
|
||||
void _Message_queue_Manager_initialization(void);
|
||||
|
||||
/**
|
||||
* @brief RTEMS Create Message Queue
|
||||
* @brief RTEMS Create Message Queue
|
||||
*
|
||||
* This routine implements the rtems_message_queue_create directive. The
|
||||
* message queue will have the @a name. If the @a attribute_set indicates
|
||||
* that the message queue is to be limited in the number of messages
|
||||
* that can be outstanding, then @a count indicates the maximum number of
|
||||
* messages that will be held. It returns the id of the created
|
||||
* message queue in @a id.
|
||||
* This routine implements the rtems_message_queue_create directive. The
|
||||
* message queue will have the @a name. If the @a attribute_set indicates
|
||||
* that the message queue is to be limited in the number of messages
|
||||
* that can be outstanding, then @a count indicates the maximum number of
|
||||
* messages that will be held. It returns the id of the created
|
||||
* message queue in @a id.
|
||||
*
|
||||
* @param[in] name is the user defined queue name
|
||||
* @param[in] count is the maximum message and reserved buffer count
|
||||
* @param[in] max_message_size is the maximum size of each message
|
||||
* @param[in] attribute_set is the process method
|
||||
* @param[in] id is the pointer to queue
|
||||
* @param[in] name is the user defined queue name
|
||||
* @param[in] count is the maximum message and reserved buffer count
|
||||
* @param[in] max_message_size is the maximum size of each message
|
||||
* @param[in] attribute_set is the process method
|
||||
* @param[in] id is the pointer to queue
|
||||
*
|
||||
* @return This method returns RTEMS_SUCCESSFUL if there was not an
|
||||
* error. Otherwise, a status code is returned indicating the
|
||||
* source of the error. If successful, the @a id will
|
||||
* be filled in with the queue id.
|
||||
* @retval This method returns RTEMS_SUCCESSFUL if there was not an
|
||||
* error. Otherwise, a status code is returned indicating the
|
||||
* source of the error. If successful, the @a id will
|
||||
* be filled in with the queue id.
|
||||
*/
|
||||
rtems_status_code rtems_message_queue_create(
|
||||
rtems_name name,
|
||||
@@ -135,22 +138,22 @@ rtems_status_code rtems_message_queue_create(
|
||||
);
|
||||
|
||||
/**
|
||||
* @brief RTEMS Message Queue Name to Id
|
||||
* @brief RTEMS Message Queue Name to Id
|
||||
*
|
||||
* This routine implements the rtems_message_queue_ident directive.
|
||||
* This directive returns the message queue ID associated with NAME.
|
||||
* If more than one message queue is named name, then the message
|
||||
* queue to which the ID belongs is arbitrary. node indicates the
|
||||
* extent of the search for the ID of the message queue named name.
|
||||
* The search can be limited to a particular node or allowed to
|
||||
* encompass all nodes.
|
||||
* This routine implements the rtems_message_queue_ident directive.
|
||||
* This directive returns the message queue ID associated with NAME.
|
||||
* If more than one message queue is named name, then the message
|
||||
* queue to which the ID belongs is arbitrary. node indicates the
|
||||
* extent of the search for the ID of the message queue named name.
|
||||
* The search can be limited to a particular node or allowed to
|
||||
* encompass all nodes.
|
||||
*
|
||||
* @param[in] name is the user defined message queue name
|
||||
* @param[in] node is the node(s) to be searched
|
||||
* @param[in] id is the pointer to message queue id
|
||||
* @param[in] name is the user defined message queue name
|
||||
* @param[in] node is the node(s) to be searched
|
||||
* @param[in] id is the pointer to message queue id
|
||||
*
|
||||
* @return RTEMS_SUCCESSFUL if successful or error code if unsuccessful and
|
||||
* *id filled with the message queue id
|
||||
* @retval RTEMS_SUCCESSFUL if successful or error code if unsuccessful and
|
||||
* *id filled with the message queue id
|
||||
*/
|
||||
rtems_status_code rtems_message_queue_ident(
|
||||
rtems_name name,
|
||||
@@ -159,14 +162,14 @@ rtems_status_code rtems_message_queue_ident(
|
||||
);
|
||||
|
||||
/**
|
||||
* @brief RTEMS Delete Message Queue
|
||||
* @brief RTEMS Delete Message Queue
|
||||
*
|
||||
* This routine implements the rtems_message_queue_delete directive. The
|
||||
* message queue indicated by ID is deleted.
|
||||
* This routine implements the rtems_message_queue_delete directive. The
|
||||
* message queue indicated by ID is deleted.
|
||||
*
|
||||
* @param[in] id is the queue id
|
||||
* @param[in] id is the queue id
|
||||
*
|
||||
* @return RTEMS_SUCCESSFUL if successful or error code if unsuccessful
|
||||
* @retval RTEMS_SUCCESSFUL if successful or error code if unsuccessful
|
||||
*/
|
||||
rtems_status_code rtems_message_queue_delete(
|
||||
rtems_id id
|
||||
@@ -194,19 +197,19 @@ rtems_status_code rtems_message_queue_send(
|
||||
);
|
||||
|
||||
/**
|
||||
* @brief RTEMS Urgent Message Queue
|
||||
* @brief RTEMS Urgent Message Queue
|
||||
*
|
||||
* This routine implements the rtems_message_queue_urgent directive.
|
||||
* This directive has the same behavior as rtems_message_queue_send
|
||||
* except that if no tasks are waiting, the message buffer will
|
||||
* be placed at the FRONT of the chain of pending messages rather
|
||||
* than at the REAR.
|
||||
* This routine implements the rtems_message_queue_urgent directive.
|
||||
* This directive has the same behavior as rtems_message_queue_send
|
||||
* except that if no tasks are waiting, the message buffer will
|
||||
* be placed at the FRONT of the chain of pending messages rather
|
||||
* than at the REAR.
|
||||
*
|
||||
* @param[in] id is the pointer to message queue
|
||||
* @param[in] buffer is the pointer to message buffer
|
||||
* @param[in] size is the size of message to send urgently
|
||||
* @param[in] id is the pointer to message queue
|
||||
* @param[in] buffer is the pointer to message buffer
|
||||
* @param[in] size is the size of message to send urgently
|
||||
*
|
||||
* @return RTEMS_SUCCESSFUL if successful or error code if unsuccessful
|
||||
* @retval RTEMS_SUCCESSFUL if successful or error code if unsuccessful
|
||||
*/
|
||||
rtems_status_code rtems_message_queue_urgent(
|
||||
rtems_id id,
|
||||
@@ -215,20 +218,20 @@ rtems_status_code rtems_message_queue_urgent(
|
||||
);
|
||||
|
||||
/**
|
||||
* @brief RTEMS Broadcast Message Queue
|
||||
* @brief RTEMS Broadcast Message Queue
|
||||
*
|
||||
* This routine implements the rtems_message_queue_broadcast directive.
|
||||
* This directive sends the message buffer to all of the tasks blocked
|
||||
* waiting for a message on the message queue indicated by ID.
|
||||
* If no tasks are waiting, then the message buffer will not be queued.
|
||||
* This routine implements the rtems_message_queue_broadcast directive.
|
||||
* This directive sends the message buffer to all of the tasks blocked
|
||||
* waiting for a message on the message queue indicated by ID.
|
||||
* If no tasks are waiting, then the message buffer will not be queued.
|
||||
*
|
||||
* @param[in] id is the pointer to message queue
|
||||
* @param[in] buffer is the pointer to message buffer
|
||||
* @param[in] size is the size of message to broadcast
|
||||
* @param[in] count pointer to area to store number of threads made ready
|
||||
* @param[in] id is the pointer to message queue
|
||||
* @param[in] buffer is the pointer to message buffer
|
||||
* @param[in] size is the size of message to broadcast
|
||||
* @param[in] count pointer to area to store number of threads made ready
|
||||
*
|
||||
* @return RTEMS_SUCCESSFUL if successful or error code if unsuccessful and
|
||||
* *count filled in with number of threads made ready
|
||||
* @retval RTEMS_SUCCESSFUL if successful or error code if unsuccessful and
|
||||
* *count filled in with number of threads made ready
|
||||
*/
|
||||
rtems_status_code rtems_message_queue_broadcast(
|
||||
rtems_id id,
|
||||
@@ -238,25 +241,25 @@ rtems_status_code rtems_message_queue_broadcast(
|
||||
);
|
||||
|
||||
/**
|
||||
* @brief RTEMS Message Queue Receive
|
||||
* @brief RTEMS Message Queue Receive
|
||||
*
|
||||
* This routine implements the rtems_message_queue_receive directive.
|
||||
* This directive is invoked when the calling task wishes to receive
|
||||
* a message from the message queue indicated by ID. The received
|
||||
* message is to be placed in buffer. If no messages are outstanding
|
||||
* and the option_set indicates that the task is willing to block,
|
||||
* then the task will be blocked until a message arrives or until,
|
||||
* optionally, timeout clock ticks have passed.
|
||||
* This routine implements the rtems_message_queue_receive directive.
|
||||
* This directive is invoked when the calling task wishes to receive
|
||||
* a message from the message queue indicated by ID. The received
|
||||
* message is to be placed in buffer. If no messages are outstanding
|
||||
* and the option_set indicates that the task is willing to block,
|
||||
* then the task will be blocked until a message arrives or until,
|
||||
* optionally, timeout clock ticks have passed.
|
||||
*
|
||||
* @param[in] id is the queue id
|
||||
* @param[in] buffer is the pointer to message buffer
|
||||
* @param[in] size is the size of message receive
|
||||
* @param[in] option_set is the options on receive
|
||||
* @param[in] timeout is the number of ticks to wait
|
||||
* @param[in] id is the queue id
|
||||
* @param[in] buffer is the pointer to message buffer
|
||||
* @param[in] size is the size of message receive
|
||||
* @param[in] option_set is the options on receive
|
||||
* @param[in] timeout is the number of ticks to wait
|
||||
*
|
||||
* @return This method returns RTEMS_SUCCESSFUL if there was not an
|
||||
* error. Otherwise, a status code is returned indicating the
|
||||
* source of the error.
|
||||
* @retval This method returns RTEMS_SUCCESSFUL if there was not an
|
||||
* error. Otherwise, a status code is returned indicating the
|
||||
* source of the error.
|
||||
*/
|
||||
rtems_status_code rtems_message_queue_receive(
|
||||
rtems_id id,
|
||||
@@ -315,24 +318,24 @@ rtems_status_code _Message_queue_Submit(
|
||||
);
|
||||
|
||||
/**
|
||||
* @brief Message Queue Allocate
|
||||
* @brief Message Queue Allocate
|
||||
*
|
||||
* This function allocates a message queue control block from
|
||||
* the inactive chain of free message queue control blocks.
|
||||
* This function allocates a message queue control block from
|
||||
* the inactive chain of free message queue control blocks.
|
||||
*
|
||||
* @return the_message_queue filled in if successful, NULL otherwise
|
||||
* @retval the_message_queue filled in if successful, NULL otherwise
|
||||
*/
|
||||
Message_queue_Control *_Message_queue_Allocate (void);
|
||||
|
||||
/**
|
||||
* @brief Message queue Translate Core Message Queue Return Code
|
||||
* @brief Message queue Translate Core Message Queue Return Code
|
||||
*
|
||||
* This function returns a RTEMS status code based on
|
||||
* @a the_message_queue_status.
|
||||
* This function returns a RTEMS status code based on
|
||||
* @a the_message_queue_status.
|
||||
*
|
||||
* @param[in] the_message_queue_status is the status code to translate
|
||||
* @param[in] the_message_queue_status is the status code to translate
|
||||
*
|
||||
* @return translated RTEMS status code
|
||||
* @retval translated RTEMS status code
|
||||
*/
|
||||
rtems_status_code _Message_queue_Translate_core_message_queue_return_code (
|
||||
uint32_t the_message_queue_status
|
||||
|
||||
@@ -1,18 +1,21 @@
|
||||
/**
|
||||
* @file rtems/rtems/modes.h
|
||||
*
|
||||
* @brief Constants and Structures Associated with the RTEMS thread and RTEMS_ASR modes
|
||||
* @defgroup ClassicModes Modes
|
||||
*
|
||||
* This include file contains all constants and structures associated
|
||||
* with the RTEMS thread and RTEMS_ASR modes.
|
||||
* @ingroup ClassicRTEMS
|
||||
* @brief RTEMS thread and RTEMS_ASR modes
|
||||
*
|
||||
* This include file contains all constants and structures associated
|
||||
* with the RTEMS thread and RTEMS_ASR modes.
|
||||
*/
|
||||
|
||||
/* COPYRIGHT (c) 1989-2008.
|
||||
* On-Line Applications Research Corporation (OAR).
|
||||
/* COPYRIGHT (c) 1989-2008.
|
||||
* On-Line Applications Research Corporation (OAR).
|
||||
*
|
||||
* The license and distribution terms for this file may be
|
||||
* found in the file LICENSE in this distribution or at
|
||||
* http://www.rtems.com/license/LICENSE.
|
||||
* The license and distribution terms for this file may be
|
||||
* found in the file LICENSE in this distribution or at
|
||||
* http://www.rtems.com/license/LICENSE.
|
||||
*/
|
||||
|
||||
#ifndef _RTEMS_RTEMS_MODES_H
|
||||
@@ -84,14 +87,14 @@ typedef uint32_t Modes_Control;
|
||||
#define RTEMS_NO_ASR 0x00000400
|
||||
|
||||
/**
|
||||
* @brief RTEMS_INTERRUPT_LEVEL
|
||||
* @brief RTEMS_INTERRUPT_LEVEL
|
||||
*
|
||||
* This function returns the processor dependent interrupt
|
||||
* level which corresponds to the requested interrupt level.
|
||||
* This function returns the processor dependent interrupt
|
||||
* level which corresponds to the requested interrupt level.
|
||||
*
|
||||
* @note RTEMS supports 256 interrupt levels using the least
|
||||
* significant eight bits of MODES.CONTROL. On any
|
||||
* particular CPU, fewer than 256 levels may be supported.
|
||||
* @note RTEMS supports 256 interrupt levels using the least
|
||||
* significant eight bits of MODES.CONTROL. On any
|
||||
* particular CPU, fewer than 256 levels may be supported.
|
||||
*/
|
||||
#define RTEMS_INTERRUPT_LEVEL( _mode_set ) \
|
||||
( (_mode_set) & RTEMS_INTERRUPT_MASK )
|
||||
@@ -104,15 +107,15 @@ typedef uint32_t Modes_Control;
|
||||
extern const uint32_t rtems_interrupt_mask;
|
||||
|
||||
/**
|
||||
* @brief Body for RTEMS_INTERRUPT_LEVEL Macro
|
||||
* @brief Body for RTEMS_INTERRUPT_LEVEL Macro
|
||||
*
|
||||
* @param[in] level is the desired interrupt level
|
||||
* @param[in] level is the desired interrupt level
|
||||
*
|
||||
* @return This methods returns a mode with the desired interrupt
|
||||
* @a level in the proper bitfield location.
|
||||
* @retval This methods returns a mode with the desired interrupt
|
||||
* @a level in the proper bitfield location.
|
||||
*
|
||||
* @note This variable is used by bindings from languages other than
|
||||
* C and C++.
|
||||
* @note This variable is used by bindings from languages other than
|
||||
* C and C++.
|
||||
*/
|
||||
Modes_Control rtems_interrupt_level_body(
|
||||
uint32_t level
|
||||
|
||||
@@ -1,16 +1,21 @@
|
||||
/**
|
||||
* @file rtems/rtems/msgmp.h
|
||||
*
|
||||
* This include file contains all the constants and structures associated
|
||||
* with the Multiprocessing Support in the Message Manager.
|
||||
* @defgroup ClassicMsgMP Message Queue MP Support
|
||||
*
|
||||
* @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.
|
||||
* On-Line Applications Research Corporation (OAR).
|
||||
/* COPYRIGHT (c) 1989-2008.
|
||||
* On-Line Applications Research Corporation (OAR).
|
||||
*
|
||||
* The license and distribution terms for this file may be
|
||||
* found in the file LICENSE in this distribution or at
|
||||
* http://www.rtems.com/license/LICENSE.
|
||||
* The license and distribution terms for this file may be
|
||||
* found in the file LICENSE in this distribution or at
|
||||
* http://www.rtems.com/license/LICENSE.
|
||||
*/
|
||||
|
||||
#ifndef _RTEMS_RTEMS_MSGMP_H
|
||||
@@ -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
|
||||
* the request from another node.
|
||||
* This routine performs the actions specific to this package for
|
||||
* the request from another node.
|
||||
*/
|
||||
void _Message_queue_MP_Process_packet (
|
||||
rtems_packet_prefix *the_packet_prefix
|
||||
|
||||
@@ -1,18 +1,21 @@
|
||||
/**
|
||||
* @file rtems/rtems/options.h
|
||||
*
|
||||
* @brief Information Which Defines the Options Available on Many Directives.
|
||||
* @defgroup ClassicOptions Classic API Options
|
||||
*
|
||||
* This include file contains information which defines the
|
||||
* options available on many directives.
|
||||
* @ingroup ClassicRTEMS
|
||||
* @brief Options Available on Many Directives
|
||||
*
|
||||
* This include file contains information which defines the
|
||||
* options available on many directives.
|
||||
*/
|
||||
|
||||
/* COPYRIGHT (c) 1989-2008.
|
||||
* On-Line Applications Research Corporation (OAR).
|
||||
/* COPYRIGHT (c) 1989-2008.
|
||||
* On-Line Applications Research Corporation (OAR).
|
||||
*
|
||||
* The license and distribution terms for this file may be
|
||||
* found in the file LICENSE in this distribution or at
|
||||
* http://www.rtems.com/license/LICENSE.
|
||||
* The license and distribution terms for this file may be
|
||||
* found in the file LICENSE in this distribution or at
|
||||
* http://www.rtems.com/license/LICENSE.
|
||||
*/
|
||||
|
||||
#ifndef _RTEMS_RTEMS_OPTIONS_H
|
||||
@@ -23,13 +26,13 @@ extern "C" {
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @defgroup ClassicOptions Classic API Options
|
||||
* @defgroup ClassicOptions Classic API Options
|
||||
*
|
||||
* @ingroup ClassicRTEMS
|
||||
* @ingroup ClassicRTEMS
|
||||
*
|
||||
* This encapsulates functionality related to the options argument
|
||||
* to Classic API blocking operations. The primary option is whether
|
||||
* or not a task is willing to wait for the operation to complete.
|
||||
* This encapsulates functionality related to the options argument
|
||||
* to Classic API blocking operations. The primary option is whether
|
||||
* or not a task is willing to wait for the operation to complete.
|
||||
*/
|
||||
/**@{*/
|
||||
|
||||
|
||||
@@ -1,16 +1,21 @@
|
||||
/**
|
||||
* @file rtems/rtems/semmp.h
|
||||
*
|
||||
* This include file contains all the constants and structures associated
|
||||
* with the Multiprocessing Support in the Semaphore Manager.
|
||||
* @defgroup ClassicSEM Semaphore MP Support
|
||||
*
|
||||
* @ingroup ClassicRTEMS
|
||||
* @brief Semaphore Manager MP Support
|
||||
*
|
||||
* This include file contains all the constants and structures associated
|
||||
* with the Multiprocessing Support in the Semaphore Manager.
|
||||
*/
|
||||
|
||||
/* COPYRIGHT (c) 1989-2008.
|
||||
* On-Line Applications Research Corporation (OAR).
|
||||
/* COPYRIGHT (c) 1989-2008.
|
||||
* On-Line Applications Research Corporation (OAR).
|
||||
*
|
||||
* The license and distribution terms for this file may be
|
||||
* found in the file LICENSE in this distribution or at
|
||||
* http://www.rtems.com/license/LICENSE.
|
||||
* The license and distribution terms for this file may be
|
||||
* found in the file LICENSE in this distribution or at
|
||||
* http://www.rtems.com/license/LICENSE.
|
||||
*/
|
||||
|
||||
#ifndef _RTEMS_RTEMS_SEMMP_H
|
||||
@@ -142,12 +147,12 @@ Semaphore_MP_Packet *_Semaphore_MP_Get_packet ( void );
|
||||
/**
|
||||
* @brief Semaphore Core Mutex MP Support
|
||||
*
|
||||
* This function processes the global actions necessary for remote
|
||||
* accesses to a global semaphore based on a core mutex. This function
|
||||
* is called by the core.
|
||||
* This function processes the global actions necessary for remote
|
||||
* accesses to a global semaphore based on a core mutex. This function
|
||||
* is called by the core.
|
||||
*
|
||||
* @param[in] the_thread the remote thread the semaphore was surrendered to
|
||||
* @param[in] id is the id of the surrendered semaphore
|
||||
* @param[in] the_thread the remote thread the semaphore was surrendered to
|
||||
* @param[in] id is the id of the surrendered semaphore
|
||||
*/
|
||||
void _Semaphore_Core_mutex_mp_support (
|
||||
Thread_Control *the_thread,
|
||||
@@ -155,14 +160,14 @@ void _Semaphore_Core_mutex_mp_support (
|
||||
);
|
||||
|
||||
/**
|
||||
* @brief Semaphore Core MP Support
|
||||
* @brief Semaphore Core MP Support
|
||||
*
|
||||
* This function processes the global actions necessary for remote
|
||||
* accesses to a global semaphore based on a core semaphore. This function
|
||||
* is called by the core.
|
||||
* This function processes the global actions necessary for remote
|
||||
* accesses to a global semaphore based on a core semaphore. This function
|
||||
* is called by the core.
|
||||
*
|
||||
* @param[in] the_thread the remote thread the semaphore was surrendered to
|
||||
* @param[in] id is the id of the surrendered semaphore
|
||||
* @param[in] the_thread the remote thread the semaphore was surrendered to
|
||||
* @param[in] id is the id of the surrendered semaphore
|
||||
*/
|
||||
void _Semaphore_Core_semaphore_mp_support (
|
||||
Thread_Control *the_thread,
|
||||
|
||||
@@ -1,16 +1,21 @@
|
||||
/**
|
||||
* @file rtems/rtems/signalmp.h
|
||||
*
|
||||
* This include file contains all the constants and structures associated
|
||||
* with the Multiprocessing Support in the Signal Manager.
|
||||
* @defgroup ClassicSignalMP Signal MP Support
|
||||
*
|
||||
* @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.
|
||||
* On-Line Applications Research Corporation (OAR).
|
||||
/* COPYRIGHT (c) 1989-2008.
|
||||
* On-Line Applications Research Corporation (OAR).
|
||||
*
|
||||
* The license and distribution terms for this file may be
|
||||
* found in the file LICENSE in this distribution or at
|
||||
* http://www.rtems.com/license/LICENSE.
|
||||
* The license and distribution terms for this file may be
|
||||
* found in the file LICENSE in this distribution or at
|
||||
* http://www.rtems.com/license/LICENSE.
|
||||
*/
|
||||
|
||||
#ifndef _RTEMS_RTEMS_SIGNALMP_H
|
||||
|
||||
@@ -1,19 +1,18 @@
|
||||
/**
|
||||
* @file
|
||||
*
|
||||
* @defgroup ClassicRTEMSWorkspace Workspace
|
||||
*
|
||||
* @ingroup ClassicRTEMS
|
||||
*
|
||||
* @ingroup ClassicRTEMSWorkspace
|
||||
*
|
||||
* @brief Classic API support.
|
||||
*/
|
||||
|
||||
/* COPYRIGHT (c) 1989-2008.
|
||||
* On-Line Applications Research Corporation (OAR).
|
||||
/* COPYRIGHT (c) 1989-2008.
|
||||
* On-Line Applications Research Corporation (OAR).
|
||||
*
|
||||
* The license and distribution terms for this file may be
|
||||
* found in the file LICENSE in this distribution or at
|
||||
* http://www.rtems.com/license/LICENSE.
|
||||
* The license and distribution terms for this file may be
|
||||
* found in the file LICENSE in this distribution or at
|
||||
* http://www.rtems.com/license/LICENSE.
|
||||
*/
|
||||
|
||||
#ifndef _RTEMS_RTEMS_SUPPORT_H
|
||||
|
||||
@@ -1,16 +1,21 @@
|
||||
/**
|
||||
* @file rtems/rtems/taskmp.h
|
||||
*
|
||||
* This include file contains all the constants and structures associated
|
||||
* with the multiprocessing support in the task manager.
|
||||
* @defgroup ClassicTaskMP Task MP Support
|
||||
*
|
||||
* @ingroup ClassicRTEMS
|
||||
* @brief Task Manager MP Support
|
||||
*
|
||||
* This include file contains all the constants and structures associated
|
||||
* with the multiprocessing support in the task manager.
|
||||
*/
|
||||
|
||||
/* COPYRIGHT (c) 1989-2008.
|
||||
* On-Line Applications Research Corporation (OAR).
|
||||
/* COPYRIGHT (c) 1989-2008.
|
||||
* On-Line Applications Research Corporation (OAR).
|
||||
*
|
||||
* The license and distribution terms for this file may be
|
||||
* found in the file LICENSE in this distribution or at
|
||||
* http://www.rtems.com/license/LICENSE.
|
||||
* The license and distribution terms for this file may be
|
||||
* found in the file LICENSE in this distribution or at
|
||||
* http://www.rtems.com/license/LICENSE.
|
||||
*/
|
||||
|
||||
#ifndef _RTEMS_RTEMS_TASKMP_H
|
||||
|
||||
@@ -1,38 +1,41 @@
|
||||
/**
|
||||
* @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
|
||||
* 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.
|
||||
* @ingroup ClassicRTEMS
|
||||
* @brief Instantiate RTEMS Timer Data
|
||||
*
|
||||
* 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
|
||||
* - get an ID of a timer
|
||||
* - delete a timer
|
||||
* - set timer to fire in context of clock tick
|
||||
* - after a number of ticks have passed
|
||||
* - when a specified date and time has been reached
|
||||
* - initiate the timer server task
|
||||
* - set timer to fire in context of the timer server task
|
||||
* - after a number of ticks have passed
|
||||
* - when a specified date and time has been reached
|
||||
* - reset a timer
|
||||
* - cancel a time
|
||||
* Directives provided are:
|
||||
*
|
||||
* - create a timer
|
||||
* - get an ID of a timer
|
||||
* - delete a timer
|
||||
* - set timer to fire in context of clock tick
|
||||
* - after a number of ticks have passed
|
||||
* - when a specified date and time has been reached
|
||||
* - initiate the timer server task
|
||||
* - set timer to fire in context of the timer server task
|
||||
* - after a number of ticks have passed
|
||||
* - when a specified date and time has been reached
|
||||
* - reset a timer
|
||||
* - cancel a time
|
||||
*/
|
||||
|
||||
/*
|
||||
* COPYRIGHT (c) 1989-2011.
|
||||
* On-Line Applications Research Corporation (OAR).
|
||||
* COPYRIGHT (c) 1989-2011.
|
||||
* On-Line Applications Research Corporation (OAR).
|
||||
*
|
||||
* Copyright (c) 2009 embedded brains GmbH.
|
||||
* Copyright (c) 2009 embedded brains GmbH.
|
||||
*
|
||||
* The license and distribution terms for this file may be
|
||||
* found in the file LICENSE in this distribution or at
|
||||
* http://www.rtems.com/license/LICENSE.
|
||||
* The license and distribution terms for this file may be
|
||||
* found in the file LICENSE in this distribution or at
|
||||
* http://www.rtems.com/license/LICENSE.
|
||||
*/
|
||||
|
||||
#ifndef _RTEMS_RTEMS_TIMER_H
|
||||
@@ -231,16 +234,16 @@ RTEMS_TIMER_EXTERN Objects_Information _Timer_Information;
|
||||
void _Timer_Manager_initialization(void);
|
||||
|
||||
/**
|
||||
* @brief RTEMS Create Timer
|
||||
* @brief RTEMS Create Timer
|
||||
*
|
||||
* This routine implements the rtems_timer_create directive. The
|
||||
* timer will have the name name. It returns the id of the
|
||||
* created timer in ID.
|
||||
* This routine implements the rtems_timer_create directive. The
|
||||
* timer will have the name name. It returns the id of the
|
||||
* created timer in ID.
|
||||
*
|
||||
* @param[in] name is the timer name
|
||||
* @param[out] id is the pointer to timer id
|
||||
* @param[in] name is the timer name
|
||||
* @param[out] id is the pointer to timer id
|
||||
*
|
||||
* @return RTEMS_SUCCESSFUL if successful or error code if unsuccessful
|
||||
* @retval RTEMS_SUCCESSFUL if successful or error code if unsuccessful
|
||||
*/
|
||||
rtems_status_code rtems_timer_create(
|
||||
rtems_name name,
|
||||
@@ -248,18 +251,18 @@ rtems_status_code rtems_timer_create(
|
||||
);
|
||||
|
||||
/**
|
||||
* @brief RTEMS Timer Name to Id
|
||||
* @brief RTEMS Timer Name to Id
|
||||
*
|
||||
* This routine implements the rtems_timer_ident directive.
|
||||
* This directive returns the timer ID associated with name.
|
||||
* If more than one timer is named name, then the timer
|
||||
* to which the ID belongs is arbitrary.
|
||||
* This routine implements the rtems_timer_ident directive.
|
||||
* This directive returns the timer ID associated with name.
|
||||
* If more than one timer is named name, then the timer
|
||||
* to which the ID belongs is arbitrary.
|
||||
*
|
||||
* @param[in] name is the user defined message queue name
|
||||
* @param[in] id is the pointer to timer id
|
||||
* @param[in] name is the user defined message queue name
|
||||
* @param[in] id is the pointer to timer id
|
||||
*
|
||||
* @return RTEMS_SUCCESSFUL if successful or error code if unsuccessful and
|
||||
* id filled with the message queue id
|
||||
* @retval RTEMS_SUCCESSFUL if successful or error code if unsuccessful and
|
||||
* id filled with the message queue id
|
||||
*/
|
||||
rtems_status_code rtems_timer_ident(
|
||||
rtems_name name,
|
||||
@@ -277,38 +280,38 @@ rtems_status_code rtems_timer_cancel(
|
||||
);
|
||||
|
||||
/**
|
||||
* @brief RTEMS Delete Timer
|
||||
* @brief RTEMS Delete Timer
|
||||
*
|
||||
* This routine implements the rtems_timer_delete directive. The
|
||||
* timer indicated by ID is deleted.
|
||||
* This routine implements the rtems_timer_delete directive. The
|
||||
* timer indicated by ID is deleted.
|
||||
*
|
||||
* @param[in] id is the timer id
|
||||
* @param[in] id is the timer id
|
||||
*
|
||||
* @return This method returns RTEMS_SUCCESSFUL if there was not an
|
||||
* error. Otherwise, a status code is returned indicating the
|
||||
* source of the error.
|
||||
* @retval This method returns RTEMS_SUCCESSFUL if there was not an
|
||||
* error. Otherwise, a status code is returned indicating the
|
||||
* source of the error.
|
||||
*/
|
||||
rtems_status_code rtems_timer_delete(
|
||||
rtems_id id
|
||||
);
|
||||
|
||||
/**
|
||||
* @brief RTEMS Timer Fire After
|
||||
* @brief RTEMS Timer Fire After
|
||||
*
|
||||
* This routine implements the rtems_timer_fire_after directive. It
|
||||
* initiates the timer associated with ID to fire in ticks clock ticks.
|
||||
* When the timer fires, the routine will be invoked in the context
|
||||
* of the rtems_clock_tick directive which is normally invoked as
|
||||
* part of servicing a periodic interupt.
|
||||
* This routine implements the rtems_timer_fire_after directive. It
|
||||
* initiates the timer associated with ID to fire in ticks clock ticks.
|
||||
* When the timer fires, the routine will be invoked in the context
|
||||
* of the rtems_clock_tick directive which is normally invoked as
|
||||
* part of servicing a periodic interupt.
|
||||
*
|
||||
* @param[in] id is the timer id
|
||||
* @param[in] ticks is the interval until routine is fired
|
||||
* @param[in] routine is the routine to schedule
|
||||
* @param[in] user_data is the passed as argument to routine when it is fired
|
||||
* @param[in] id is the timer id
|
||||
* @param[in] ticks is the interval until routine is fired
|
||||
* @param[in] routine is the routine to schedule
|
||||
* @param[in] user_data is the passed as argument to routine when it is fired
|
||||
*
|
||||
* @return This method returns RTEMS_SUCCESSFUL if there was not an
|
||||
* error. Otherwise, a status code is returned indicating the
|
||||
* source of the error.
|
||||
* @retval This method returns RTEMS_SUCCESSFUL if there was not an
|
||||
* error. Otherwise, a status code is returned indicating the
|
||||
* source of the error.
|
||||
*/
|
||||
rtems_status_code rtems_timer_fire_after(
|
||||
rtems_id id,
|
||||
@@ -318,22 +321,22 @@ rtems_status_code rtems_timer_fire_after(
|
||||
);
|
||||
|
||||
/**
|
||||
* @brief RTEMS Timer Server Fire After
|
||||
* @brief RTEMS Timer Server Fire After
|
||||
*
|
||||
* This routine implements the rtems_timer_server_fire_after directive. It
|
||||
* initiates the timer associated with ID to fire in ticks clock
|
||||
* ticks. When the timer fires, the routine will be invoked by the
|
||||
* Timer Server in the context of a task NOT IN THE CONTEXT of the
|
||||
* clock tick interrupt.
|
||||
* This routine implements the rtems_timer_server_fire_after directive. It
|
||||
* initiates the timer associated with ID to fire in ticks clock
|
||||
* ticks. When the timer fires, the routine will be invoked by the
|
||||
* Timer Server in the context of a task NOT IN THE CONTEXT of the
|
||||
* clock tick interrupt.
|
||||
*
|
||||
* @param[in] id is the timer id
|
||||
* @param[in] ticks is the interval until routine is fired
|
||||
* @param[in] routine is the routine to schedule
|
||||
* @param[in] user_data is the passed as argument to routine when it is fired
|
||||
* @param[in] id is the timer id
|
||||
* @param[in] ticks is the interval until routine is fired
|
||||
* @param[in] routine is the routine to schedule
|
||||
* @param[in] user_data is the passed as argument to routine when it is fired
|
||||
*
|
||||
* @return This method returns RTEMS_SUCCESSFUL if there was not an
|
||||
* error. Otherwise, a status code is returned indicating the
|
||||
* source of the error.
|
||||
* @retval This method returns RTEMS_SUCCESSFUL if there was not an
|
||||
* error. Otherwise, a status code is returned indicating the
|
||||
* source of the error.
|
||||
*/
|
||||
rtems_status_code rtems_timer_server_fire_after(
|
||||
rtems_id id,
|
||||
@@ -343,22 +346,22 @@ rtems_status_code rtems_timer_server_fire_after(
|
||||
);
|
||||
|
||||
/**
|
||||
* @brief RTEMS Timer Fire When
|
||||
* @brief RTEMS Timer Fire When
|
||||
*
|
||||
* This routine implements the rtems_timer_fire_when directive. It
|
||||
* initiates the timer associated with ID to fire at wall_time
|
||||
* When the timer fires, the routine will be invoked in the context
|
||||
* of the rtems_clock_tick directive which is normally invoked as
|
||||
* part of servicing a periodic interupt.
|
||||
* This routine implements the rtems_timer_fire_when directive. It
|
||||
* initiates the timer associated with ID to fire at wall_time
|
||||
* When the timer fires, the routine will be invoked in the context
|
||||
* of the rtems_clock_tick directive which is normally invoked as
|
||||
* part of servicing a periodic interupt.
|
||||
*
|
||||
* @param[in] id is the timer id
|
||||
* @param[in] wall_time is the time of day to fire timer
|
||||
* @param[in] routine is the routine to schedule
|
||||
* @param[in] user_data is the passed as argument to routine when it is fired
|
||||
* @param[in] id is the timer id
|
||||
* @param[in] wall_time is the time of day to fire timer
|
||||
* @param[in] routine is the routine to schedule
|
||||
* @param[in] user_data is the passed as argument to routine when it is fired
|
||||
*
|
||||
* @return This method returns RTEMS_SUCCESSFUL if there was not an
|
||||
* error. Otherwise, a status code is returned indicating the
|
||||
* source of the error.
|
||||
* @retval This method returns RTEMS_SUCCESSFUL if there was not an
|
||||
* error. Otherwise, a status code is returned indicating the
|
||||
* source of the error.
|
||||
*/
|
||||
rtems_status_code rtems_timer_fire_when(
|
||||
rtems_id id,
|
||||
@@ -435,16 +438,16 @@ typedef struct {
|
||||
} rtems_timer_information;
|
||||
|
||||
/**
|
||||
* @brief RTEMS Get Timer Information
|
||||
* @brief RTEMS Get Timer Information
|
||||
*
|
||||
* This routine implements the rtems_timer_get_information directive.
|
||||
* This directive returns information about the timer.
|
||||
* This routine implements the rtems_timer_get_information directive.
|
||||
* This directive returns information about the timer.
|
||||
*
|
||||
* @param[in] id is the timer id
|
||||
* @param[in] the_info is the pointer to timer information block
|
||||
* @param[in] id is the timer id
|
||||
* @param[in] the_info is the pointer to timer information block
|
||||
*
|
||||
* @return RTEMS_SUCCESSFUL if successful or error code if unsuccessful and
|
||||
* *the_info region information block filled in
|
||||
* @retval RTEMS_SUCCESSFUL if successful or error code if unsuccessful and
|
||||
* *the_info region information block filled in
|
||||
*/
|
||||
rtems_status_code rtems_timer_get_information(
|
||||
rtems_id id,
|
||||
|
||||
@@ -1,16 +1,21 @@
|
||||
/**
|
||||
* @file rtems/rtems/asr.inl
|
||||
*
|
||||
* This include file contains the implemenation of all routines
|
||||
* associated with the asynchronous signal handler which are inlined.
|
||||
* @defgroup ClassicASR ASR Support
|
||||
*
|
||||
* @ingroup ClassicRTEMS
|
||||
* @brief Asynchronous Signal Handler
|
||||
*
|
||||
* This include file contains the implemenation of all routines
|
||||
* associated with the asynchronous signal handler which are inlined.
|
||||
*/
|
||||
|
||||
/* COPYRIGHT (c) 1989-2008.
|
||||
* On-Line Applications Research Corporation (OAR).
|
||||
/* COPYRIGHT (c) 1989-2008.
|
||||
* On-Line Applications Research Corporation (OAR).
|
||||
*
|
||||
* The license and distribution terms for this file may be
|
||||
* found in the file LICENSE in this distribution or at
|
||||
* http://www.rtems.com/license/LICENSE.
|
||||
* The license and distribution terms for this file may be
|
||||
* found in the file LICENSE in this distribution or at
|
||||
* http://www.rtems.com/license/LICENSE.
|
||||
*/
|
||||
|
||||
#ifndef _RTEMS_RTEMS_ASR_H
|
||||
|
||||
@@ -1,17 +1,22 @@
|
||||
/**
|
||||
* @file rtems/rtems/barrier.inl
|
||||
*
|
||||
* @defgroup ClassicBarrier Barriers
|
||||
*
|
||||
* @ingroup ClassicRTEMS
|
||||
* @brief Inline Implementation from Barrier Manager
|
||||
*
|
||||
* This file contains the static inlin implementation of the inlined
|
||||
* routines from the Barrier Manager.
|
||||
*/
|
||||
|
||||
/*
|
||||
* COPYRIGHT (c) 1989-2008.
|
||||
* On-Line Applications Research Corporation (OAR).
|
||||
* COPYRIGHT (c) 1989-2008.
|
||||
* On-Line Applications Research Corporation (OAR).
|
||||
*
|
||||
* The license and distribution terms for this file may be
|
||||
* found in the file LICENSE in this distribution or at
|
||||
* http://www.rtems.com/license/LICENSE.
|
||||
* The license and distribution terms for this file may be
|
||||
* found in the file LICENSE in this distribution or at
|
||||
* http://www.rtems.com/license/LICENSE.
|
||||
*/
|
||||
|
||||
#ifndef _RTEMS_RTEMS_BARRIER_H
|
||||
|
||||
@@ -1,16 +1,21 @@
|
||||
/**
|
||||
* @file rtems/rtems/region.inl
|
||||
*
|
||||
* This file contains the macro implementation of the inlined
|
||||
* routines from the Region Manager.
|
||||
* @defgroup ClassicRegion
|
||||
*
|
||||
* @ingroup ClassicRTEMS
|
||||
* @brief Macro Implementation from Region Manager
|
||||
*
|
||||
* This file contains the macro implementation of the inlined
|
||||
* routines from the Region Manager.
|
||||
*/
|
||||
|
||||
/* COPYRIGHT (c) 1989-2008.
|
||||
* On-Line Applications Research Corporation (OAR).
|
||||
/* COPYRIGHT (c) 1989-2008.
|
||||
* On-Line Applications Research Corporation (OAR).
|
||||
*
|
||||
* The license and distribution terms for this file may be
|
||||
* found in the file LICENSE in this distribution or at
|
||||
* http://www.rtems.com/license/LICENSE.
|
||||
* The license and distribution terms for this file may be
|
||||
* found in the file LICENSE in this distribution or at
|
||||
* http://www.rtems.com/license/LICENSE.
|
||||
*/
|
||||
|
||||
#ifndef _RTEMS_RTEMS_REGION_H
|
||||
|
||||
@@ -1,17 +1,22 @@
|
||||
/**
|
||||
* @file rtems/rtems/timer.inl
|
||||
*
|
||||
* @defgroup ClassicTimer Timers
|
||||
*
|
||||
* @ingroup ClassicRTEMS
|
||||
* @brief Inline Implementation from Timer Manager
|
||||
*
|
||||
* This file contains the static inline implementation of the inlined routines
|
||||
* from the Timer Manager.
|
||||
*/
|
||||
|
||||
/*
|
||||
* COPYRIGHT (c) 1989-2011.
|
||||
* On-Line Applications Research Corporation (OAR).
|
||||
* COPYRIGHT (c) 1989-2011.
|
||||
* On-Line Applications Research Corporation (OAR).
|
||||
*
|
||||
* The license and distribution terms for this file may be
|
||||
* found in the file LICENSE in this distribution or at
|
||||
* http://www.rtems.com/license/LICENSE.
|
||||
* The license and distribution terms for this file may be
|
||||
* found in the file LICENSE in this distribution or at
|
||||
* http://www.rtems.com/license/LICENSE.
|
||||
*/
|
||||
|
||||
#ifndef _RTEMS_RTEMS_TIMER_H
|
||||
|
||||
Reference in New Issue
Block a user