7#ifndef ZEPHYR_INCLUDE_IPC_ICMSG_H_
8#define ZEPHYR_INCLUDE_IPC_ICMSG_H_
44#ifdef CONFIG_IPC_SERVICE_ICMSG_SHMEM_ACCESS_SYNC
124 const void *msg,
size_t len);
long atomic_t
Definition: atomic_types.h:15
int icmsg_close(const struct icmsg_config_t *conf, struct icmsg_data_t *dev_data)
Close an icmsg instance.
int icmsg_send(const struct icmsg_config_t *conf, struct icmsg_data_t *dev_data, const void *msg, size_t len)
Send a message to the remote icmsg instance.
int icmsg_open(const struct icmsg_config_t *conf, struct icmsg_data_t *dev_data, const struct ipc_service_cb *cb, void *ctx)
Open an icmsg instance.
icmsg_state
Definition: icmsg.h:29
@ ICMSG_STATE_BUSY
Definition: icmsg.h:31
@ ICMSG_STATE_READY
Definition: icmsg.h:32
@ ICMSG_STATE_OFF
Definition: icmsg.h:30
struct mbox_dt_spec mbox_tx
Definition: icmsg.h:36
struct mbox_dt_spec mbox_rx
Definition: icmsg.h:37
const struct ipc_service_cb * cb
Definition: icmsg.h:49
struct k_work_delayable notify_work
Definition: icmsg.h:54
const struct icmsg_config_t * cfg
Definition: icmsg.h:53
struct k_work mbox_work
Definition: icmsg.h:55
struct pbuf * tx_pb
Definition: icmsg.h:42
struct pbuf * rx_pb
Definition: icmsg.h:43
void * ctx
Definition: icmsg.h:50
atomic_t state
Definition: icmsg.h:56
Event callback structure.
Definition: ipc_service.h:145
Mutex Structure.
Definition: kernel.h:2917
A structure used to submit work after a delay.
Definition: kernel.h:3908
A structure used to submit work.
Definition: kernel.h:3880
MBOX specification from DT.
Definition: mbox.h:87
Scure packed buffer.
Definition: pbuf.h:89