Zephyr API Documentation  3.0.0
A Scalable Open Source RTOS
3.0.0
All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
ipc_service_backend Struct Reference

IPC Service backend. More...

#include <ipc_service_backend.h>

Data Fields

int(* open_instance )(const struct device *instance)
 Pointer to the function that will be used to open an instance. More...
 
int(* send )(const struct device *instance, void *token, const void *data, size_t len)
 Pointer to the function that will be used to send data to the endpoint. More...
 
int(* register_endpoint )(const struct device *instance, void **token, const struct ipc_ept_cfg *cfg)
 Pointer to the function that will be used to register endpoints. More...
 

Detailed Description

IPC Service backend.

IPC backend configuration structure.

This structure is used for configuration backend during registration.

Field Documentation

◆ open_instance

int(* ipc_service_backend::open_instance) (const struct device *instance)

Pointer to the function that will be used to open an instance.

Parameters
instanceInstance pointer.
Return values
-EALREADYwhen the instance is already opened.
0on success
othererrno codes depending on the implementation of the backend.

◆ register_endpoint

int(* ipc_service_backend::register_endpoint) (const struct device *instance, void **token, const struct ipc_ept_cfg *cfg)

Pointer to the function that will be used to register endpoints.

Parameters
instanceInstance to register the endpoint onto.
tokenBackend-specific token.
cfgEndpoint configuration.
Return values
-EINVALwhen the endpoint configuration or instance is invalid.
-EBUSYwhen the instance is busy or not ready.
0on success
othererrno codes depending on the implementation of the backend.

◆ send

int(* ipc_service_backend::send) (const struct device *instance, void *token, const void *data, size_t len)

Pointer to the function that will be used to send data to the endpoint.

Parameters
instanceInstance pointer.
tokenBackend-specific token.
dataPointer to the buffer to send.
lenNumber of bytes to send.
Return values
-EINVALwhen instance is invalid.
-EBADMSGwhen the message is invalid.
-EBUSYwhen the instance is busy or not ready.
0on success
othererrno codes depending on the implementation of the backend.

The documentation for this struct was generated from the following file: