summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndreas Dachsberger <andreas.dachsberger@embedded-brains.de>2019-04-08 10:27:58 +0200
committerSebastian Huber <sebastian.huber@embedded-brains.de>2019-05-13 07:42:03 +0200
commitd16a90197b58e1ad948608db126df0eb64be11bd (patch)
tree16d33d46d093089634ca4ee35c9bbdf78bf12f55
parentdoxygen: score: adjust doc in coremuteximpl.h to doxygen guidelines (diff)
downloadrtems-d16a90197b58e1ad948608db126df0eb64be11bd.tar.bz2
doxygen: score: adjust doc in corerwlockimpl.h to doxygen guidelines
Update #3706.
-rw-r--r--cpukit/include/rtems/score/corerwlockimpl.h68
1 files changed, 52 insertions, 16 deletions
diff --git a/cpukit/include/rtems/score/corerwlockimpl.h b/cpukit/include/rtems/score/corerwlockimpl.h
index 508879d022..c06427a37e 100644
--- a/cpukit/include/rtems/score/corerwlockimpl.h
+++ b/cpukit/include/rtems/score/corerwlockimpl.h
@@ -1,6 +1,8 @@
/**
* @file
*
+ * @ingroup RTEMSScoreRWLock
+ *
* @brief Inlined Routines Associated with the SuperCore RWLock
*
* This include file contains all of the inlined routines associated
@@ -87,16 +89,23 @@ typedef struct {
} CORE_RWLock_Control;
/**
- * @brief Initialize a RWlock.
+ * @brief Initializes a RWlock.
*
- * This routine initializes the RWLock based on the parameters passed.
+ * This routine initializes the RWLock.
*
- * @param[in] the_rwlock is the RWLock to initialize
+ * @param[out] the_rwlock is the RWLock to initialize.
*/
void _CORE_RWLock_Initialize(
CORE_RWLock_Control *the_rwlock
);
+/**
+ * @brief Destroys a RWlock.
+ *
+ * This routine destroys the RWLock.
+ *
+ * @param[out] the_rwlock is the RWLock to destroy.
+ */
RTEMS_INLINE_ROUTINE void _CORE_RWLock_Destroy(
CORE_RWLock_Control *the_rwlock
)
@@ -104,6 +113,14 @@ RTEMS_INLINE_ROUTINE void _CORE_RWLock_Destroy(
(void) the_rwlock;
}
+/**
+ * @brief Acquires the RWlock.
+ *
+ * @param[in, out] the_rwlock The RWlock to acquire.
+ * @param queue_context The thread queue context.
+ *
+ * @return The executing thread.
+ */
RTEMS_INLINE_ROUTINE Thread_Control *_CORE_RWLock_Acquire(
CORE_RWLock_Control *the_rwlock,
Thread_queue_Context *queue_context
@@ -124,6 +141,12 @@ RTEMS_INLINE_ROUTINE Thread_Control *_CORE_RWLock_Acquire(
return executing;
}
+/**
+ * @brief Releases the RWlock.
+ *
+ * @param[in, out] the_rwlock The RWlock to release.
+ * @param queue_context The thread queue context.
+ */
RTEMS_INLINE_ROUTINE void _CORE_RWLock_Release(
CORE_RWLock_Control *the_rwlock,
Thread_queue_Context *queue_context
@@ -136,12 +159,18 @@ RTEMS_INLINE_ROUTINE void _CORE_RWLock_Release(
}
/**
- * @brief Obtain RWLock for reading.
+ * @brief Obtains RWLock for reading.
+ *
+ * This routine attempts to obtain the RWLock for read access.
*
- * This routine attempts to obtain the RWLock for read access.
+ * @param[in, out] the_rwlock is the RWLock to wait for
+ * @param wait Indicates whether the calling thread is willing to wait.
+ * @param queue_context The thread queue context.
*
- * @param[in] the_rwlock is the RWLock to wait for
- * @param[in] wait is true if the calling thread is willing to wait
+ * @retval STATUS_SUCCESSFUL The RWlock was successfully seized.
+ * @retval STATUS_UNAVAILABLE The RWlock is currently locked for writing
+ * and the calling thread is not willing to wait.
+ * @retval STATUS_TIMEOUT A timeout occured.
*/
Status_Control _CORE_RWLock_Seize_for_reading(
@@ -151,12 +180,19 @@ Status_Control _CORE_RWLock_Seize_for_reading(
);
/**
- * @brief Obtain RWLock for writing.
+ * @brief Obtains RWLock for writing.
+ *
+ * This routine attempts to obtain the RWLock for write exclusive access.
*
- * This routine attempts to obtain the RWLock for write exclusive access.
+ * @param[in, out] the_rwlock The RWLock to wait for.
+ * @param wait Indicates whether the calling thread is willing to wait.
+ * @param queue_context The thread queue context.
*
- * @param[in] the_rwlock is the RWLock to wait for
- * @param[in] wait is true if the calling thread is willing to wait
+ * @retval STATUS_SUCCESSFUL The RWLock was successfully obtained for write
+ * exclusive access.
+ * @retval STATUS_UNAVAILABLE The RWlock is currently locked and the calling
+ * thread is not willing to wait.
+ * @retval STATUS_TIMEOUT A timeout occurred.
*/
Status_Control _CORE_RWLock_Seize_for_writing(
CORE_RWLock_Control *the_rwlock,
@@ -165,14 +201,14 @@ Status_Control _CORE_RWLock_Seize_for_writing(
);
/**
- * @brief Release the RWLock.
+ * @brief Releases the RWLock.
*
- * This routine manually releases @a the_rwlock. All of the threads waiting
- * for the RWLock will be readied.
+ * This routine manually releases @a the_rwlock. All of the threads waiting
+ * for the RWLock will be readied.
*
- * @param[in] the_rwlock is the RWLock to surrender
+ * @param[in, out] the_rwlock The RWLock to surrender.
*
- * @retval Status is returned to indicate successful or failure.
+ * @return STATUS_SUCCESSFUL This method is always successful.
*/
Status_Control _CORE_RWLock_Surrender( CORE_RWLock_Control *the_rwlock );