zephyr/scripts/build
Tom Burdick e3d877f811 rtio: Userspace support
Add support for userspace with RTIO by making rtio and rtio_iodev
k_objects. As well as adding three syscalls for copying in submissions,
copying out completions, and starting tasks with submit.

For the small devices Zephyr typically runs on one of the most important
attributes tends to be low memory usage. To maintain the low footprint of
RTIO and its current executor implementations the rings are not shared with
userspace. Sharing the rings it turns out would require copying submissions
before working with them to avoid TOCTOU issues.

The API could still support shared rings in the future so that a
kernel thread could directly poll, copy, verify, and start the submitted
work. This would require a third executor implementation that maintains its
own copy of submissions similiar to how io_uring in Linux works.

Signed-off-by: Tom Burdick <thomas.burdick@intel.com>
2022-11-08 10:44:03 +01:00
..
dir_is_writeable.py
elf_parser.py scripts: build: elf_parser: use node name for Graphviz diagrams 2022-08-04 18:36:35 +02:00
file2hex.py scripts: move file2hex.py to scripts/build/file2hex.py 2022-07-12 10:03:45 +02:00
gen_app_partitions.py
gen_cfb_font_header.py includes: prefer <zephyr/kernel.h> over <zephyr/zephyr.h> 2022-09-05 16:31:47 +02:00
gen_handles.py scripts: build: gen_handles: use Z_DECL_ALIGN 2022-10-11 18:11:47 +02:00
gen_image_info.py
gen_isr_tables.py
gen_kobject_list.py rtio: Userspace support 2022-11-08 10:44:03 +01:00
gen_kobject_placeholders.py
gen_offset_header.py
gen_relocate_app.py scripts/build: Add program header support for gen_relocate_app.py 2022-11-03 10:25:07 +01:00
gen_strerror_table.py
gen_syscalls.py kernel: Prevent Wundef 2022-08-15 14:36:47 +02:00
mergehex.py
parse_syscalls.py scripts: move parse_syscalls.py to scripts/build/ 2022-07-12 10:03:45 +02:00
process_gperf.py scripts: move process_gperf.py to scripts/build 2022-07-12 10:03:45 +02:00
subfolder_list.py scripts: move subfolder_list.py to scripts/build/subfolder_list.py 2022-07-12 10:03:45 +02:00
uf2conv.py scripts: move uf2conv.py to scripts/build/uf2conv.py 2022-07-12 10:03:45 +02:00
user_wordsize.py scripts: move user_wordsize.py to scripts/build/user_wordsize.py 2022-07-12 10:03:45 +02:00