8 #ifndef RPMSG_RPC_CLIENT_SERVER_H
9 #define RPMSG_RPC_CLIENT_SERVER_H
12 #include <metal/compiler.h>
14 #if defined __cplusplus
18 #define RPMSG_RPC_OK 0
19 #define RPMSG_RPC_INVALID_ID (-1L)
20 #define RPMSG_RPC_SERVICE_NAME "rpmsg-rpc"
27 #define MAX_BUF_LEN 488UL
28 #define MAX_FUNC_ID_LEN sizeof(unsigned long int)
191 unsigned int rpc_id,
void *request_param,
192 size_t req_param_size);
210 int status,
void *request_param,
213 #if defined __cplusplus
void(* rpmsg_ns_unbind_cb)(struct rpmsg_endpoint *ept)
Definition: rpmsg.h:53
int rpmsg_rpc_client_init(struct rpmsg_rpc_clt *rpc, struct rpmsg_device *rdev, rpmsg_rpc_shutdown_cb shutdown_cb, const struct rpmsg_rpc_client_services *services, int len)
Definition: rpmsg_rpc_client.c:24
int rpmsg_rpc_server_init(struct rpmsg_rpc_svr *rpcs, struct rpmsg_device *rdev, const struct rpmsg_rpc_services *services, int len, rpmsg_ns_unbind_cb rpmsg_service_server_unbind)
Definition: rpmsg_rpc_server.c:15
METAL_PACKED_BEGIN struct rpmsg_rpc_answer METAL_PACKED_END
int rpmsg_rpc_server_send(struct rpmsg_rpc_svr *rpcs, uint32_t rpc_id, int status, void *request_param, size_t param_size)
Definition: rpmsg_rpc_server.c:81
void(* app_cb)(struct rpmsg_rpc_clt *rpc, int statust, void *data, size_t len)
Definition: rpmsg_rpc_client_server.h:34
void(* rpmsg_rpc_shutdown_cb)(struct rpmsg_rpc_clt *rpc)
Definition: rpmsg_rpc_client_server.h:33
#define MAX_BUF_LEN
Definition: rpmsg_rpc_client_server.h:27
int(* rpmsg_rpc_syscall_cb)(void *data, struct rpmsg_rpc_svr *rpcs)
Definition: rpmsg_rpc_client_server.h:36
void rpmsg_rpc_client_release(struct rpmsg_rpc_clt *rpc)
Definition: rpmsg_rpc_client.c:80
int rpmsg_rpc_client_send(struct rpmsg_rpc_clt *rpc, unsigned int rpc_id, void *request_param, size_t req_param_size)
Definition: rpmsg_rpc_client.c:49
Definition: rpmsg_rpc_client_server.h:59
int32_t status
Definition: rpmsg_rpc_client_server.h:61
uint32_t id
Definition: rpmsg_rpc_client_server.h:60
unsigned char params[MAX_BUF_LEN]
Definition: rpmsg_rpc_client_server.h:62
Definition: rpmsg_rpc_client_server.h:84
app_cb cb
Definition: rpmsg_rpc_client_server.h:86
uint32_t id
Definition: rpmsg_rpc_client_server.h:85
Definition: rpmsg_rpc_client_server.h:117
unsigned int n_services
Definition: rpmsg_rpc_client_server.h:121
rpmsg_rpc_shutdown_cb shutdown_cb
Definition: rpmsg_rpc_client_server.h:119
struct rpmsg_endpoint ept
Definition: rpmsg_rpc_client_server.h:118
const struct rpmsg_rpc_client_services * services
Definition: rpmsg_rpc_client_server.h:120
Definition: rpmsg_rpc_client_server.h:45
uint32_t id
Definition: rpmsg_rpc_client_server.h:46
unsigned char params[MAX_BUF_LEN]
Definition: rpmsg_rpc_client_server.h:47
Definition: rpmsg_rpc_client_server.h:72
rpmsg_rpc_syscall_cb cb_function
Definition: rpmsg_rpc_client_server.h:74
uint32_t id
Definition: rpmsg_rpc_client_server.h:73
Definition: rpmsg_rpc_client_server.h:99
unsigned int n_services
Definition: rpmsg_rpc_client_server.h:102
struct rpmsg_endpoint ept
Definition: rpmsg_rpc_client_server.h:100
const struct rpmsg_rpc_services * services
Definition: rpmsg_rpc_client_server.h:101