diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2016-05-20 14:59:30 +0200 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2016-05-20 16:17:00 +0200 |
commit | 62c528e633758302f30aa714838b51613f03f9e7 (patch) | |
tree | dda69197e96e7cb301e8a71556821437439b76b1 /cpukit/rtems/src/semmp.c | |
parent | rtems: _Message_queue_Get_interrupt_disable() (diff) | |
download | rtems-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 'cpukit/rtems/src/semmp.c')
-rw-r--r-- | cpukit/rtems/src/semmp.c | 30 |
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, |