summaryrefslogtreecommitdiffstats
path: root/cpukit/rtems/src/semmp.c
diff options
context:
space:
mode:
Diffstat (limited to 'cpukit/rtems/src/semmp.c')
-rw-r--r--cpukit/rtems/src/semmp.c30
1 files changed, 27 insertions, 3 deletions
diff --git a/cpukit/rtems/src/semmp.c b/cpukit/rtems/src/semmp.c
index 7b9c39be33..7f7506cd5f 100644
--- a/cpukit/rtems/src/semmp.c
+++ b/cpukit/rtems/src/semmp.c
@@ -72,11 +72,11 @@ void _Semaphore_MP_Send_process_packet (
}
}
-rtems_status_code _Semaphore_MP_Send_request_packet (
- Semaphore_MP_Remote_operations operation,
+static rtems_status_code _Semaphore_MP_Send_request_packet(
Objects_Id semaphore_id,
rtems_option option_set,
- rtems_interval timeout
+ rtems_interval timeout,
+ Semaphore_MP_Remote_operations operation
)
{
Semaphore_MP_Packet *the_packet;
@@ -120,6 +120,30 @@ rtems_status_code _Semaphore_MP_Send_request_packet (
return RTEMS_SUCCESSFUL;
}
+rtems_status_code _Semaphore_MP_Obtain(
+ rtems_id id,
+ rtems_option option_set,
+ rtems_interval timeout
+)
+{
+ return _Semaphore_MP_Send_request_packet(
+ id,
+ option_set,
+ timeout,
+ SEMAPHORE_MP_OBTAIN_REQUEST
+ );
+}
+
+rtems_status_code _Semaphore_MP_Release( rtems_id id )
+{
+ return _Semaphore_MP_Send_request_packet(
+ id,
+ 0,
+ MPCI_DEFAULT_TIMEOUT,
+ SEMAPHORE_MP_RELEASE_REQUEST
+ );
+}
+
static void _Semaphore_MP_Send_response_packet (
Semaphore_MP_Remote_operations operation,
Objects_Id semaphore_id,