summaryrefslogtreecommitdiff
path: root/cpukit/include/rtems/rtems/sem.h
diff options
context:
space:
mode:
Diffstat (limited to 'cpukit/include/rtems/rtems/sem.h')
-rw-r--r--cpukit/include/rtems/rtems/sem.h52
1 files changed, 48 insertions, 4 deletions
diff --git a/cpukit/include/rtems/rtems/sem.h b/cpukit/include/rtems/rtems/sem.h
index 6f3e8af99c..5b12e9a152 100644
--- a/cpukit/include/rtems/rtems/sem.h
+++ b/cpukit/include/rtems/rtems/sem.h
@@ -236,13 +236,57 @@ rtems_status_code rtems_semaphore_flush( rtems_id id );
/**
* @ingroup RTEMSAPIClassicSem
*
- * @brief %
+ * @brief Identifies a semaphore object by the specified object name.
*
- * @param name %
+ * This directive obtains the semaphore identifier associated with the
+ * semaphore name specified in ``name``.
*
- * @param node %
+ * The node to search is specified in ``node``. It shall be
*
- * @param id %
+ * * a valid node number,
+ *
+ * * the constant #RTEMS_SEARCH_ALL_NODES to search in all nodes,
+ *
+ * * the constant #RTEMS_SEARCH_LOCAL_NODE to search in the local node only, or
+ *
+ * * the constant #RTEMS_SEARCH_OTHER_NODES to search in all nodes except the
+ * local node.
+ *
+ * If the semaphore name is not unique, then the semaphore identifier will
+ * match the first semaphore with that name in the search order. However, this
+ * semaphore identifier is not guaranteed to correspond to the desired
+ * semaphore. The semaphore identifier is used with other semaphore related
+ * directives to access the semaphore.
+ *
+ * If node is #RTEMS_SEARCH_ALL_NODES, all nodes are searched with the local
+ * node being searched first. All other nodes are searched with the lowest
+ * numbered node searched first.
+ *
+ * If node is a valid node number which does not represent the local node, then
+ * only the semaphores exported by the designated node are searched.
+ *
+ * This directive does not generate activity on remote nodes. It accesses only
+ * the local copy of the global object table.
+ *
+ * @param name is the object name to look up.
+ *
+ * @param node is the node or node set to search for a matching object.
+ *
+ * @param[out] id is the pointer to an object identifier variable. The object
+ * identifier of an object with the specified name will be stored in this
+ * variable, in case of a successful operation.
+ *
+ * @retval ::RTEMS_SUCCESSFUL The requested operation was successful.
+ *
+ * @retval ::RTEMS_INVALID_ADDRESS The id parameter was NULL.
+ *
+ * @retval ::RTEMS_INVALID_NAME The name parameter was 0.
+ *
+ * @retval ::RTEMS_INVALID_NAME There was no object with the specified name on
+ * the specified nodes.
+ *
+ * @retval ::RTEMS_INVALID_NODE In multiprocessing configurations, the
+ * specified node was invalid.
*/
rtems_status_code rtems_semaphore_ident(
rtems_name name,