|
Zephyr Project API
3.2.0
A Scalable Open Source RTOS
|
RTIO Concurrent Executor. More...
Data Structures | |
| struct | rtio_concurrent_executor |
| Concurrent Executor. More... | |
Macros | |
| #define | RTIO_EXECUTOR_CONCURRENT_DEFINE(name, concurrency) |
| Statically define and initialie a concurrent executor. More... | |
Functions | |
| int | rtio_concurrent_submit (struct rtio *r) |
| Submit to the concurrent executor. More... | |
| void | rtio_concurrent_ok (struct rtio *r, const struct rtio_sqe *sqe, int result) |
| Report a SQE has completed successfully. More... | |
| void | rtio_concurrent_err (struct rtio *r, const struct rtio_sqe *sqe, int result) |
| Report a SQE has completed with error. More... | |
RTIO Concurrent Executor.
Provides a concurrent executor with a pointer overhead per task and a 2 word overhead over the simple executor to know the order of tasks (fifo).
| #define RTIO_EXECUTOR_CONCURRENT_DEFINE | ( | name, | |
| concurrency | |||
| ) |
#include <include/zephyr/rtio/rtio_executor_concurrent.h>
Statically define and initialie a concurrent executor.
INTERNAL_HIDDEN
| name | Symbol name, must be unique in the context in which its used |
| concurrency | Allowed concurrency (number of concurrent tasks). |
#include <include/zephyr/rtio/rtio_executor_concurrent.h>
Report a SQE has completed with error.
| r | RTIO context to use |
| sqe | RTIO SQE to report success |
| result | Result of the SQE |
#include <include/zephyr/rtio/rtio_executor_concurrent.h>
Report a SQE has completed successfully.
| r | RTIO context to use |
| sqe | RTIO SQE to report success |
| result | Result of the SQE |
| int rtio_concurrent_submit | ( | struct rtio * | r | ) |
#include <include/zephyr/rtio/rtio_executor_concurrent.h>
Submit to the concurrent executor.
| r | RTIO context to submit |
| 0 | always succeeds |