|
Zephyr API Documentation 4.4.99
A Scalable Open Source RTOS
|
Helpers for reading and writing device register lists through RTIO. More...
#include <zephyr/rtio/rtio.h>Go to the source code of this file.
Data Structures | |
| struct | rtio_regs |
| A structure to describe a list of not-consecutive memory chunks for RTIO operations. More... | |
| struct | rtio_regs::rtio_regs_list |
| Description of a single memory chunk. More... | |
Enumerations | |
| enum | rtio_bus_type { RTIO_BUS_I2C , RTIO_BUS_SPI , RTIO_BUS_I3C } |
| bus type More... | |
Functions | |
| static bool | rtio_is_spi (rtio_bus_type bus_type) |
| check if bus is SPI | |
| static bool | rtio_is_i2c (rtio_bus_type bus_type) |
| check if bus is I2C | |
| static bool | rtio_is_i3c (rtio_bus_type bus_type) |
| check if bus is I3C | |
| static void | rtio_read_regs_async (struct rtio *r, struct rtio_iodev *iodev, rtio_bus_type bus_type, struct rtio_regs *regs, struct rtio_iodev_sqe *iodev_sqe, const struct device *dev, rtio_callback_t complete_op_cb) |
| Create a chain of SQEs representing a bus transaction to read a reg. | |
Helpers for reading and writing device register lists through RTIO.
| enum rtio_bus_type |
|
inlinestatic |
check if bus is I2C
| bus_type | Type of bus (I2C, SPI, I3C) |
|
inlinestatic |
check if bus is I3C
| bus_type | Type of bus (I2C, SPI, I3C) |
|
inlinestatic |
check if bus is SPI
| bus_type | Type of bus (I2C, SPI, I3C) |
|
inlinestatic |
Create a chain of SQEs representing a bus transaction to read a reg.
The RTIO-enabled bus driver is instrumented to perform bus read ops for each register in the list.
Usage:
| r | RTIO context |
| iodev | IO device |
| bus_type | Type of bus (I2C, SPI, I3C) |
| regs | pointer to list of registers to be read. Raise proper bit in case of SPI bus |
| iodev_sqe | IODEV submission for the await op |
| dev | pointer to the device structure |
| complete_op_cb | callback routine at the end of op |