Zephyr API Documentation 4.4.0-rc1
A Scalable Open Source RTOS
Loading...
Searching...
No Matches
IPM Driver Backend API

Data Structures

struct  ipm_driver_api
  Driver Operations IPM driver operations More...

Typedefs

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.
typedef int(* ipm_max_data_size_get_t) (const struct device *ipmdev)
 Callback API to get maximum data size.
typedef uint32_t(* ipm_max_id_val_get_t) (const struct device *ipmdev)
 Callback API to get the ID's maximum value.
typedef void(* ipm_register_callback_t) (const struct device *port, ipm_callback_t cb, void *user_data)
 Callback API to register a callback for incoming messages.
typedef int(* ipm_set_enabled_t) (const struct device *ipmdev, int enable)
 Callback API to enable or disable interrupts for inbound channels.
typedef void(* ipm_complete_t) (const struct device *ipmdev)
 Callback API to signal asynchronous command completion.

Detailed Description

This group contains the API type definitions, callback signatures, and other helpers required to implement a IPM driver.

Typedef Documentation

◆ ipm_complete_t

typedef void(* ipm_complete_t) (const struct device *ipmdev)

#include <zephyr/drivers/ipm.h>

Callback API to signal asynchronous command completion.

See ipm_complete() for argument definitions.

◆ ipm_max_data_size_get_t

typedef int(* ipm_max_data_size_get_t) (const struct device *ipmdev)

#include <zephyr/drivers/ipm.h>

Callback API to get maximum data size.

See ipm_max_data_size_get() for argument definitions.

◆ ipm_max_id_val_get_t

typedef uint32_t(* ipm_max_id_val_get_t) (const struct device *ipmdev)

#include <zephyr/drivers/ipm.h>

Callback API to get the ID's maximum value.

See ipm_max_id_val_get() for argument definitions.

◆ ipm_register_callback_t

typedef void(* ipm_register_callback_t) (const struct device *port, ipm_callback_t cb, void *user_data)

#include <zephyr/drivers/ipm.h>

Callback API to register a callback for incoming messages.

See ipm_register_callback() for argument definitions.

◆ ipm_send_t

typedef int(* ipm_send_t) (const struct device *ipmdev, int wait, uint32_t id, const void *data, int size)

#include <zephyr/drivers/ipm.h>

Callback API to send IPM messages.

See ipm_send() for argument definitions.

◆ ipm_set_enabled_t

typedef int(* ipm_set_enabled_t) (const struct device *ipmdev, int enable)

#include <zephyr/drivers/ipm.h>

Callback API to enable or disable interrupts for inbound channels.

See ipm_set_enabled() for argument definitions.