Zephyr API Documentation  2.7.0-rc2
A Scalable Open Source RTOS
IPC service APIs

IPC Service API. More...

Data Structures

struct  ipc_service_cb
 Event callback structure. More...
 
struct  ipc_ept_cfg
 Endpoint configuration structure. More...
 
struct  ipc_service_backend
 IPC Service backend. More...
 

Functions

int ipc_service_register_endpoint (struct ipc_ept **ept, const struct ipc_ept_cfg *cfg)
 Register IPC endpoint. More...
 
int ipc_service_send (struct ipc_ept *ept, const void *data, size_t len)
 Send data using given IPC endpoint. More...
 

Detailed Description

IPC Service API.

Function Documentation

◆ ipc_service_register_endpoint()

int ipc_service_register_endpoint ( struct ipc_ept **  ept,
const struct ipc_ept_cfg cfg 
)

#include <include/ipc/ipc_service.h>

Register IPC endpoint.

Registers IPC endpoint to enable communication with a remote device.

The same function registers endpoints for both master and slave devices.

Parameters
eptEndpoint object.
cfgEndpoint configuration.
Return values
-EIOwhen no backend is registered.
-EINVALwhen pointer to an endpoint or endpoint configuration is invalid.
Othererrno codes depending on the implementation of the backend.

◆ ipc_service_send()

int ipc_service_send ( struct ipc_ept *  ept,
const void data,
size_t  len 
)

#include <include/ipc/ipc_service.h>

Send data using given IPC endpoint.

Parameters
eptRegistered endpoint by ipc_service_register_endpoint.
dataPointer to the buffer to send.
lenNumber of bytes to send.
Return values
-EIOwhen no backend is registered.
Othererrno codes depending on the implementation of the backend.