diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2016-05-20 13:24:11 +0200 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2016-05-20 16:16:59 +0200 |
commit | 0a00b2b5f6d115829f05bbac260ba7c9bc47c9e4 (patch) | |
tree | bc25332e7b0f84f2130cfe9163824d76c8037bed /cpukit/rtems/include/rtems | |
parent | mpci: Delete unused region support (diff) | |
download | rtems-0a00b2b5f6d115829f05bbac260ba7c9bc47c9e4.tar.bz2 |
rtems: Remove location from _Partition_Get()
Use _Objects_Get_local() for _Partition_Get() to get rid of the location
parameter. Move remote object handling to partition MPCI support.
Diffstat (limited to '')
-rw-r--r-- | cpukit/rtems/include/rtems/rtems/partimpl.h | 10 | ||||
-rw-r--r-- | cpukit/rtems/include/rtems/rtems/partmp.h | 25 |
2 files changed, 21 insertions, 14 deletions
diff --git a/cpukit/rtems/include/rtems/rtems/partimpl.h b/cpukit/rtems/include/rtems/rtems/partimpl.h index 0ce7622a7a..ea791559d1 100644 --- a/cpukit/rtems/include/rtems/rtems/partimpl.h +++ b/cpukit/rtems/include/rtems/rtems/partimpl.h @@ -181,17 +181,15 @@ RTEMS_INLINE_ROUTINE void _Partition_Free ( _Objects_Free( &_Partition_Information, &the_partition->Object ); } -RTEMS_INLINE_ROUTINE Partition_Control *_Partition_Get ( +RTEMS_INLINE_ROUTINE Partition_Control *_Partition_Get( Objects_Id id, - Objects_Locations *location, ISR_lock_Context *lock_context ) { - return (Partition_Control *) _Objects_Get_isr_disable( - &_Partition_Information, + return (Partition_Control *) _Objects_Get_local( id, - location, - lock_context + lock_context, + &_Partition_Information ); } diff --git a/cpukit/rtems/include/rtems/rtems/partmp.h b/cpukit/rtems/include/rtems/rtems/partmp.h index e9612e7aba..b9eaa08b8c 100644 --- a/cpukit/rtems/include/rtems/rtems/partmp.h +++ b/cpukit/rtems/include/rtems/rtems/partmp.h @@ -64,6 +64,11 @@ typedef struct { Objects_Id proxy_id; } Partition_MP_Packet; +RTEMS_INLINE_ROUTINE bool _Partition_MP_Is_remote( Objects_Id id ) +{ + return _Objects_MP_Is_remote( id, &_Partition_Information ); +} + /** * @brief Partition_MP_Send_process_packet * @@ -80,15 +85,19 @@ void _Partition_MP_Send_process_packet ( ); /** - * @brief Partition_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_partition_get_buffer() request. + */ +rtems_status_code _Partition_MP_Get_buffer( + rtems_id id, + void **buffer +); + +/** + * @brief Issues a remote rtems_partition_return_buffer() request. */ -rtems_status_code _Partition_MP_Send_request_packet ( - Partition_MP_Remote_operations operation, - Objects_Id partition_id, - void *buffer +rtems_status_code _Partition_MP_Return_buffer( + rtems_id id, + void *buffer ); /** |