Zephyr API Documentation
2.7.0-rc2
A Scalable Open Source RTOS
|
Generic low-level inter-processor mailbox communication API. More...
#include <kernel.h>
#include <device.h>
#include <syscalls/ipm.h>
Go to the source code of this file.
Data Structures | |
struct | ipm_driver_api |
Typedefs | |
typedef void(* | ipm_callback_t) (const struct device *ipmdev, void *user_data, uint32_t id, volatile void *data) |
Callback API for incoming IPM messages. More... | |
typedef int(* | ipm_send_t) (const struct device *ipmdev, int wait, uint32_t id, const void *data, int size) |
Callback API to send IPM messages. More... | |
typedef int(* | ipm_max_data_size_get_t) (const struct device *ipmdev) |
Callback API to get maximum data size. More... | |
typedef uint32_t(* | ipm_max_id_val_get_t) (const struct device *ipmdev) |
Callback API to get the ID's maximum value. More... | |
typedef void(* | ipm_register_callback_t) (const struct device *port, ipm_callback_t cb, void *user_data) |
Callback API upon registration. More... | |
typedef int(* | ipm_set_enabled_t) (const struct device *ipmdev, int enable) |
Callback API upon enablement of interrupts. More... | |
Functions | |
int | ipm_send (const struct device *ipmdev, int wait, uint32_t id, const void *data, int size) |
Try to send a message over the IPM device. More... | |
static void | ipm_register_callback (const struct device *ipmdev, ipm_callback_t cb, void *user_data) |
Register a callback function for incoming messages. More... | |
int | ipm_max_data_size_get (const struct device *ipmdev) |
Return the maximum number of bytes possible in an outbound message. More... | |
uint32_t | ipm_max_id_val_get (const struct device *ipmdev) |
Return the maximum id value possible in an outbound message. More... | |
int | ipm_set_enabled (const struct device *ipmdev, int enable) |
Enable interrupts and callbacks for inbound channels. More... | |
Generic low-level inter-processor mailbox communication API.