summaryrefslogtreecommitdiffstats
path: root/cpukit/rtems/include/rtems/rtems/semmp.h
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2016-05-20 14:59:30 +0200
committerSebastian Huber <sebastian.huber@embedded-brains.de>2016-05-20 16:17:00 +0200
commit62c528e633758302f30aa714838b51613f03f9e7 (patch)
treedda69197e96e7cb301e8a71556821437439b76b1 /cpukit/rtems/include/rtems/rtems/semmp.h
parentrtems: _Message_queue_Get_interrupt_disable() (diff)
downloadrtems-62c528e633758302f30aa714838b51613f03f9e7.tar.bz2
rtems: _Semaphore_Get_interrupt_disable()
Use _Objects_Get_local() for _Semaphore_Get_interrupt_disable() to get rid of the location parameter. Move remote object handling to semaphore MPCI support.
Diffstat (limited to '')
-rw-r--r--cpukit/rtems/include/rtems/rtems/semmp.h24
1 files changed, 15 insertions, 9 deletions
diff --git a/cpukit/rtems/include/rtems/rtems/semmp.h b/cpukit/rtems/include/rtems/rtems/semmp.h
index d186aa0997..9d7669f43e 100644
--- a/cpukit/rtems/include/rtems/rtems/semmp.h
+++ b/cpukit/rtems/include/rtems/rtems/semmp.h
@@ -65,6 +65,11 @@ typedef struct {
Objects_Id proxy_id;
} Semaphore_MP_Packet;
+RTEMS_INLINE_ROUTINE bool _Semaphore_MP_Is_remote( Objects_Id id )
+{
+ return _Objects_MP_Is_remote( id, &_Semaphore_Information );
+}
+
/**
* @brief Semaphore MP Send Process Packet
*
@@ -79,19 +84,20 @@ void _Semaphore_MP_Send_process_packet (
);
/**
- * @brief Semaphore MP Send Request Packet
- *
- * This routine performs a remote procedure call so that a
- * directive operation can be initiated on another node.
+ * @brief Issues a remote rtems_semaphore_obtain() request.
*/
-rtems_status_code _Semaphore_MP_Send_request_packet (
- Semaphore_MP_Remote_operations operation,
- Objects_Id semaphore_id,
- rtems_option option_set,
- rtems_interval timeout
+rtems_status_code _Semaphore_MP_Obtain(
+ rtems_id id,
+ rtems_option option_set,
+ rtems_interval timeout
);
/**
+ * @brief Issues a remote rtems_semaphore_release() request.
+ */
+rtems_status_code _Semaphore_MP_Release( rtems_id id );
+
+/**
* @brief Semaphore MP Process Packet
*
* This routine performs the actions specific to this package for