From 8c8fd64a704ccd5958a6a426771ea533c4eb8744 Mon Sep 17 00:00:00 2001 From: Joel Sherrill Date: Fri, 6 Jun 2008 18:03:45 +0000 Subject: 2008-06-06 Joel Sherrill * rtems/include/rtems.h, rtems/include/rtems/rtems/clock.h, rtems/include/rtems/rtems/config.h, rtems/include/rtems/rtems/dpmem.h, rtems/include/rtems/rtems/eventset.h, rtems/include/rtems/rtems/object.h, rtems/include/rtems/rtems/part.h, rtems/include/rtems/rtems/ratemon.h, rtems/include/rtems/rtems/region.h, rtems/include/rtems/rtems/sem.h, rtems/include/rtems/rtems/tasks.h, rtems/include/rtems/rtems/timer.h, rtems/include/rtems/rtems/types.h, rtems/src/ratemonperiod.c: Improve Classic API Doxygen. --- cpukit/rtems/include/rtems/rtems/sem.h | 29 ++++++++++++++++++++++++++++- 1 file changed, 28 insertions(+), 1 deletion(-) (limited to 'cpukit/rtems/include/rtems/rtems/sem.h') diff --git a/cpukit/rtems/include/rtems/rtems/sem.h b/cpukit/rtems/include/rtems/rtems/sem.h index 656717d653..f58ef5ec36 100644 --- a/cpukit/rtems/include/rtems/rtems/sem.h +++ b/cpukit/rtems/include/rtems/rtems/sem.h @@ -53,7 +53,8 @@ extern "C" { /** * @defgroup ClassicSem Classic API Semaphore * - * This encapsulates functionality which XXX + * This encapsulates functionality related to the Classic API + * Semaphore Manager. */ /**@{*/ @@ -61,10 +62,36 @@ extern "C" { * The following defines the control block used to manage each semaphore. */ typedef struct { + /** This field is the object management portion of a Semaphore instance. */ Objects_Control Object; + + /** + * This is the Classic API attribute provided to the create directive. + * It is translated into behavioral attributes on the SuperCore Semaphore + * or Mutex instance. + */ rtems_attribute attribute_set; + + /** + * This contains the memory associated with the SuperCore Semaphore or + * Mutex instance that provides the primary functionality of each + * Classic API Semaphore instance. The structure used is dependent + * on the attributes specified by the user on the create directive. + * + * @note Only one of these has meaning in a particular Classic API + * Semaphore instance. + */ union { + /** + * This is the SuperCore Mutex instance associated with this Classic + * API Semaphore instance. + */ CORE_mutex_Control mutex; + + /** + * This is the SuperCore Semaphore instance associated with this Classic + * API Semaphore instance. + */ CORE_semaphore_Control semaphore; } Core_control; } Semaphore_Control; -- cgit v1.2.3