7#ifndef ZEPHYR_INCLUDE_ZBUS_PROXY_AGENT_ZBUS_PROXY_AGENT_IPC_H_
8#define ZEPHYR_INCLUDE_ZBUS_PROXY_AGENT_ZBUS_PROXY_AGENT_IPC_H_
80#define _ZBUS_PROXY_AGENT_BACKEND_CONFIG_DEFINE_ZBUS_PROXY_AGENT_BACKEND_IPC(_name, \
82 static struct zbus_proxy_agent_ipc_data _name##_ipc_data = { \
84 .name = #_name "_ipc_ept", \
87 static const struct zbus_proxy_agent_ipc_config _name##_ipc_config = { \
88 .dev = DEVICE_DT_GET(_backend_dt_node), \
89 .ept_name = #_name "_ipc_ept", \
90 .data = &_name##_ipc_data, \
99#define _ZBUS_PROXY_AGENT_GET_BACKEND_CONFIG_ZBUS_PROXY_AGENT_BACKEND_IPC(_name) \
100 (&_name##_ipc_config)
110#define _ZBUS_PROXY_AGENT_GET_BACKEND_API_ZBUS_PROXY_AGENT_BACKEND_IPC \
111 (&zbus_proxy_agent_ipc_backend_api)
int(* zbus_proxy_agent_recv_cb_t)(const struct zbus_proxy_agent *agent, const struct zbus_proxy_msg *msg)
Type definition for the proxy agent receive callback function.
Definition zbus_proxy_agent.h:111
__UINT8_TYPE__ uint8_t
Definition stdint.h:88
Runtime device structure (in ROM) per driver instance.
Definition device.h:513
Endpoint configuration structure.
Definition ipc_service.h:208
Semaphore structure.
Definition kernel.h:3798
Backend API structure for proxy agent backends.
Definition zbus_proxy_agent.h:117
Configuration structure for the IPC backend of a Zbus proxy agent.
Definition zbus_proxy_agent_ipc.h:63
const struct device * dev
IPC device.
Definition zbus_proxy_agent_ipc.h:65
const char * ept_name
Endpoint name for IPC.
Definition zbus_proxy_agent_ipc.h:67
struct zbus_proxy_agent_ipc_data * data
Pointer to mutable IPC backend runtime data.
Definition zbus_proxy_agent_ipc.h:69
Mutable runtime data for the IPC backend of a Zbus proxy agent.
Definition zbus_proxy_agent_ipc.h:45
const struct zbus_proxy_agent * recv_cb_config_ptr
pointer to proxy agent config, used as user data for the receive callback
Definition zbus_proxy_agent_ipc.h:55
uint8_t initialized
1 once backend init completes successfully, otherwise 0
Definition zbus_proxy_agent_ipc.h:57
struct ipc_ept_cfg ept_cfg
IPC endpoint configuration.
Definition zbus_proxy_agent_ipc.h:49
struct ipc_ept ipc_ept
IPC endpoint.
Definition zbus_proxy_agent_ipc.h:47
zbus_proxy_agent_recv_cb_t recv_cb
Callback function for received data.
Definition zbus_proxy_agent_ipc.h:53
struct k_sem ept_bound_sem
Semaphore to signal when the IPC endpoint is bound.
Definition zbus_proxy_agent_ipc.h:51
Structure for proxy agent configuration.
Definition zbus_proxy_agent.h:83