1 /* 2 * Copyright (c) 2024, Arm Limited and Contributors. All rights reserved. 3 * 4 * SPDX-License-Identifier: BSD-3-Clause 5 */ 6 7 #ifndef __RSE_COMMS_CALLER_H__ 8 #define __RSE_COMMS_CALLER_H__ 9 10 #include "rpc_caller.h" 11 #include "rse_comms_messenger_api.h" 12 13 typedef void *rse_comms_call_handle; 14 15 rpc_status_t rse_comms_caller_init(struct rpc_caller_interface *rpc_caller); 16 rpc_status_t rse_comms_caller_deinit(struct rpc_caller_interface *rpc_caller); 17 18 rse_comms_call_handle rse_comms_caller_begin(struct rpc_caller_interface *caller, 19 uint8_t **request_buffer, size_t request_length); 20 21 rpc_status_t rse_comms_caller_invoke(rse_comms_call_handle handle, uint32_t opcode, 22 uint8_t **response_buffer, size_t *response_length); 23 24 rpc_status_t rse_comms_caller_end(rse_comms_call_handle handle); 25 26 #endif /* __RSE_COMMS_CALLER_H__ */ 27