/Zephyr-latest/tests/subsys/rtio/rtio_api/ |
D | testcase.yaml | 12 rtio.api: 14 tags: rtio 19 rtio.api.submit_sem: 21 tags: rtio 26 rtio.api.userspace: 34 - rtio 38 rtio.api.userspace.submit_sem: 46 - rtio
|
/Zephyr-latest/include/zephyr/drivers/spi/ |
D | rtio.h | 12 #include <zephyr/rtio/rtio.h> 19 * @brief Driver context for implementing SPI with RTIO 23 struct rtio *r; 45 * @brief Copy the tx_bufs and rx_bufs into a set of RTIO requests 47 * @param[in] r rtio context 56 int spi_rtio_copy(struct rtio *r, 63 * @brief Initialize a SPI RTIO context 65 * @param ctx SPI RTIO driver context 73 * @param ctx SPI RTIO driver context 102 * @brief Fallback SPI RTIO submit implementation. [all …]
|
/Zephyr-latest/subsys/rtio/ |
D | Kconfig | 4 menuconfig RTIO config 5 bool "RTIO" 7 if RTIO 40 from the allocated memory pool associated with the RTIO context. 44 module = RTIO 45 module-str = RTIO 46 module-help = Sets log level for RTIO support
|
D | Kconfig.workq | 5 bool "RTIO Work-queues service to process Sync operations" 9 Enable RTIO Work-queues to allow processing synchronous operations 15 int "Medium Thread priority of RTIO Work-queues" 19 int "Thread stack-size of RTIO Workqueues" 27 int "Pool of work items to use with the RTIO Work-queues"
|
D | CMakeLists.txt | 5 zephyr_syscall_header(${ZEPHYR_BASE}/include/zephyr/rtio/rtio.h) 9 zephyr_include_directories(${ZEPHYR_BASE}/subsys/rtio)
|
D | rtio_handlers.c | 9 #include <zephyr/rtio/rtio.h> 46 /* RTIO OP must be known and allowable from user mode in rtio_vrfy_sqe() 55 static inline void z_vrfy_rtio_release_buffer(struct rtio *r, void *buff, uint32_t buff_len) in z_vrfy_rtio_release_buffer() 62 static inline int z_vrfy_rtio_cqe_get_mempool_buffer(const struct rtio *r, struct rtio_cqe *cqe, in z_vrfy_rtio_cqe_get_mempool_buffer() 79 static inline int z_vrfy_rtio_sqe_copy_in_get_handles(struct rtio *r, const struct rtio_sqe *sqes, in z_vrfy_rtio_sqe_copy_in_get_handles() 112 static inline int z_vrfy_rtio_cqe_copy_out(struct rtio *r, in z_vrfy_rtio_cqe_copy_out() 125 static inline int z_vrfy_rtio_submit(struct rtio *r, uint32_t wait_count) in z_vrfy_rtio_submit()
|
/Zephyr-latest/include/zephyr/rtio/ |
D | work.h | 12 #include <zephyr/rtio/rtio.h> 27 * @brief RTIO Work request. 29 * This RTIO Work request to perform a work operation decoupled 30 * from its submission in the RTIO work-queues. 48 * @brief Allocate item to perform an RTIO work request. 59 * @brief Submit RTIO work request. 62 * @param iodev_sqe RTIO Operation information.
|
D | rtio.h | 11 * RTIO is a context for asynchronous batch operations using a submission and completion queue. 47 * @brief RTIO 48 * @defgroup rtio RTIO 56 * @brief RTIO Predefined Priorities 57 * @defgroup rtio_sqe_prio RTIO Priorities 58 * @ingroup rtio 83 * @brief RTIO SQE Flags 84 * @defgroup rtio_sqe_flags RTIO SQE Flags 85 * @ingroup rtio 112 * @brief The buffer should be allocated by the RTIO mempool [all …]
|
/Zephyr-latest/include/zephyr/drivers/i2c/ |
D | rtio.h | 12 #include <zephyr/rtio/rtio.h> 19 * @brief Driver context for implementing i2c with rtio 24 struct rtio *r; 46 * @brief Copy an array of i2c_msgs to rtio submissions and a transaction 51 struct rtio_sqe *i2c_rtio_copy(struct rtio *r, struct rtio_iodev *iodev, const struct i2c_msg *msgs, 55 * @brief Initialize an i2c rtio context 57 * @param ctx I2C RTIO driver context 65 * @param ctx I2C RTIO driver context
|
/Zephyr-latest/include/zephyr/drivers/i3c/ |
D | rtio.h | 13 #include <zephyr/rtio/rtio.h> 20 * @brief Driver context for implementing i3c with rtio 25 struct rtio *r; 47 * @brief Copy an array of i3c_msgs to rtio submissions and a transaction 52 struct rtio_sqe *i3c_rtio_copy(struct rtio *r, struct rtio_iodev *iodev, const struct i3c_msg *msgs, 56 * @brief Initialize an i3c rtio context 58 * @param ctx I3C RTIO driver context 65 * @param ctx I3C RTIO driver context
|
/Zephyr-latest/samples/subsys/rtio/ |
D | rtio.rst | 1 .. zephyr:code-sample-category:: rtio 2 :name: Real Time I/O (RTIO) 5 Samples that demonstrate the :ref:`rtio` subsystem.
|
/Zephyr-latest/doc/services/rtio/ |
D | index.rst | 3 Real Time I/O (RTIO) 14 RTIO provides a framework for doing asynchronous operation chains with event 15 driven I/O. This section covers the RTIO API, queues, executor, iodev, 18 RTIO takes a lot of inspiration from Linux's io_uring in its operations and API 80 The above sequence of operations is embodied in RTIO as chain of 85 and device on the bus it is embodied in what RTIO calls an iodev. 105 The RTIO executor is a low overhead concurrent I/O task scheduler. It ensures 141 the RTIO context that the read was associated with. To create such an RTIO 143 an RTIO context with a dedicated pool of "memory blocks" which can be consumed by 144 the iodev. Below is a snippet setting up the RTIO context with a memory pool. [all …]
|
/Zephyr-latest/samples/drivers/i2c/rtio_loopback/ |
D | README.rst | 1 .. zephyr:code-sample:: i2c-rtio-loopback 2 :name: I2C RTIO loopback 3 :relevant-api: rtio i2c_interface 5 Perform I2C transfers between I2C controller and custom I2C target using RTIO. 11 using RTIO. It uses up to two I2C controllers, acting as I2C controller and
|
D | sample.yaml | 2 name: I2C RTIO loopback sample 6 - rtio
|
/Zephyr-latest/samples/subsys/rtio/sensor_batch_processing/ |
D | sample.yaml | 2 name: RTIO sample 4 sample.rtio.sensor_batch_processing: 5 tags: rtio
|
D | README.rst | 3 :relevant-api: rtio 5 Implement a sensor device using RTIO for asynchronous data processing. 10 This sample application demonstrates the use of the :ref:`rtio` framework for 12 Application uses :ref:`rtio` with mempool API to fetch data from virtual sensor 23 This sample can be found under :zephyr_file:`samples/subsys/rtio` in the Zephyr tree. 29 :zephyr-app: samples/subsys/rtio
|
/Zephyr-latest/subsys/sensing/ |
D | Kconfig | 8 select RTIO 22 int "Number of the sensing RTIO SQE" 26 int "Number of the sensing RTIO SQE" 30 int "Block size of the RTIO context" 34 int "Number of memory blocks of the RTIO context"
|
/Zephyr-latest/drivers/sensor/ |
D | sensor_shell.h | 12 #include <zephyr/rtio/rtio.h> 20 extern struct rtio sensor_read_rtio;
|
/Zephyr-latest/tests/subsys/rtio/workq/ |
D | testcase.yaml | 2 rtio.workq: 3 tags: rtio
|
/Zephyr-latest/tests/subsys/rtio/rtio_i2c/ |
D | testcase.yaml | 5 rtio.i2c: 7 tags: rtio
|
/Zephyr-latest/samples/drivers/i2c/rtio_loopback/src/ |
D | main.c | 9 #include <zephyr/rtio/rtio.h> 10 #include <zephyr/drivers/i2c/rtio.h> 35 * The user defines an RTIO context to which actions like writes and reads will be 45 * The user defines an RTIO IODEV which wraps the device which will perform the 46 * actions submitted to the RTIO context. In this sample, we are using an I2C 47 * controller device, so we use the I2C specific helper to define the RTIO IODEV. 52 * For async write read operation we will be waiting for a callback from RTIO. 58 * We register a simple I2C target which we will be targeting using RTIO. We 191 /* This is functionally identical to sample_standard_write_read() but uses RTIO */ 250 * Since the RTIO SQEs are executed in the background, we need to in sample_rtio_write_read() [all …]
|
/Zephyr-latest/tests/subsys/rtio/rtio_api/src/ |
D | test_rtio_api.c | 17 #include <zephyr/rtio/rtio.h> 42 * @brief Test the basics of the RTIO API 44 * Ensures that we can setup an RTIO context, enqueue a request, and receive 47 void test_rtio_simple_(struct rtio *r) in test_rtio_simple_() 74 TC_PRINT("rtio simple simple\n"); in ZTEST() 110 * Ensures that we can setup an RTIO context, enqueue a chained requests, 114 void test_rtio_chain_(struct rtio *r) in test_rtio_chain_() 160 TC_PRINT("rtio chain simple\n"); in ZTEST() 175 void test_rtio_multiple_chains_(struct rtio *r) in test_rtio_multiple_chains_() 234 TC_PRINT("rtio multiple chains\n"); in ZTEST() [all …]
|
/Zephyr-latest/drivers/sensor/tdk/icm42688/ |
D | icm42688_rtio.h | 11 #include <zephyr/rtio/rtio.h>
|
/Zephyr-latest/drivers/sensor/st/lsm6dsv16x/ |
D | lsm6dsv16x_rtio.h | 13 #include <zephyr/rtio/rtio.h>
|
/Zephyr-latest/tests/drivers/i2c/i2c_ram/ |
D | testcase.yaml | 16 drivers.i2c.ram.rtio: 27 drivers.i2c.ram.pm.rtio:
|