IPC service RPMsg API .
More...
|
#define | NUM_ENDPOINTS CONFIG_IPC_SERVICE_BACKEND_RPMSG_NUM_ENDPOINTS_PER_INSTANCE |
| Number of endpoints.
|
|
|
int | ipc_rpmsg_init (struct ipc_rpmsg_instance *instance, unsigned int role, unsigned int buffer_size, struct metal_io_region *shm_io, struct virtio_device *vdev, void *shb, size_t size, rpmsg_ns_bind_cb ns_bind_cb) |
| Init an RPMsg instance.
|
|
int | ipc_rpmsg_deinit (struct ipc_rpmsg_instance *instance, unsigned int role) |
| Deinit an RPMsg instance.
|
|
int | ipc_rpmsg_register_ept (struct ipc_rpmsg_instance *instance, unsigned int role, struct ipc_rpmsg_ept *ept) |
| Register an endpoint.
|
|
IPC service RPMsg API .
◆ NUM_ENDPOINTS
#define NUM_ENDPOINTS CONFIG_IPC_SERVICE_BACKEND_RPMSG_NUM_ENDPOINTS_PER_INSTANCE |
◆ rpmsg_ept_bound_cb
#include <zephyr/ipc/ipc_rpmsg.h>
Define the bound callback.
This callback is defined at instance level and it is called when an endpoint of the instance is bound.
- Parameters
-
ept | Endpoint of the instance just bound. |
◆ ipc_rpmsg_deinit()
#include <zephyr/ipc/ipc_rpmsg.h>
Deinit an RPMsg instance.
- Parameters
-
instance | Pointer to the RPMsg instance struct. |
role | Host / Remote role. |
- Return values
-
-EINVAL | When some parameter is missing |
0 | If successful |
◆ ipc_rpmsg_init()
int ipc_rpmsg_init |
( |
struct ipc_rpmsg_instance * | instance, |
|
|
unsigned int | role, |
|
|
unsigned int | buffer_size, |
|
|
struct metal_io_region * | shm_io, |
|
|
struct virtio_device * | vdev, |
|
|
void * | shb, |
|
|
size_t | size, |
|
|
rpmsg_ns_bind_cb | ns_bind_cb ) |
#include <zephyr/ipc/ipc_rpmsg.h>
Init an RPMsg instance.
Init an RPMsg instance.
- Parameters
-
instance | Pointer to the RPMsg instance struct. |
role | Host / Remote role. |
buffer_size | Size of the buffer used to send data between host and remote. |
shm_io | SHM IO region pointer. |
vdev | VirtIO device pointer. |
shb | Shared memory region pointer. |
size | Size of the shared memory region. |
ns_bind_cb | callback handler for name service announcement without local endpoints waiting to bind. If NULL the implementation falls back to the internal implementation. |
- Return values
-
-EINVAL | When some parameter is missing. |
0 | If successful. |
Other | errno codes depending on the OpenAMP implementation. |
◆ ipc_rpmsg_register_ept()
#include <zephyr/ipc/ipc_rpmsg.h>
Register an endpoint.
Register an endpoint to a provided RPMsg instance.
- Parameters
-
instance | Pointer to the RPMsg instance struct. |
role | Host / Remote role. |
ept | Endpoint to register. |
- Return values
-
-EINVAL | When some parameter is missing. |
0 | If successful. |
Other | errno codes depending on the OpenAMP implementation. |