genode/repos/os/include
Piotr Tworek 2ec9e69fd4 os: Add support for reading VirtIO responses.
Some more advanced devices like VirtIO GPU do expect they can receive
responses to VirtIO commands they issue via VirtIO queue. Such responses
are not sent via a separate device writeable queue. Instead the driver
is expected to queue some additional descriptors and buffers which the
device can then use to provide the reply.

This patch adds support for such write-data-read-response opeartion to
Genode VirtIO::Queue implementation. The implementation is pretty simple
and does not support any fancy features like receiving the response
asynchronously. Instead the operation will use caller provided callback
to wait for the device to process the command. Once this callback
returns the write-data-read-response VirtIO::Queue function will invoke
another callback passing received response as argument.
2021-11-29 15:11:53 +01:00
..
audio_in_session audio_in: fix compile errors when strict warnings are enabled 2021-10-14 11:02:11 +02:00
audio_out_session os: clear remaining samples in Audio packet 2019-04-09 12:30:34 +02:00
blit os: add blit/painter.h 2020-07-13 11:33:13 +02:00
block platform_session: cache arg for alloc_dma_buffer 2021-04-20 12:10:57 +02:00
block_session doc: tweaks for updated Genode Foundations book 2020-05-27 11:56:46 +02:00
capture_session Capture session interface 2020-07-13 11:33:13 +02:00
decorator Rename 'Nitpicker' namespace to 'Gui' 2020-06-22 09:39:40 +02:00
event_session event_session: make Session_client::Batch abstract 2020-08-25 11:49:43 +02:00
file_system base: remove Cancelable_lock 2020-07-30 08:49:23 +02:00
file_system_session Replace Genode::strncpy by Genode::copy_cstring 2020-05-27 11:56:45 +02:00
framebuffer_session Change pixel format to 32 bits per pixel 2020-06-29 14:22:29 +02:00
genode_c_api os: introduce C API for generating Genode events 2021-10-13 14:46:54 +02:00
gpio gpio: introduce Pin and '_with_gpio' 2020-10-09 13:35:56 +02:00
gpio_session base/os: remove deprecated APIs 2019-02-26 14:44:15 +01:00
gpu gpu: add information for etnaviv driver 2021-11-29 15:11:52 +01:00
gpu_session gpu: reflect CAP shortage during buffer management 2021-10-14 11:02:09 +02:00
gui_session Change pixel format to 32 bits per pixel 2020-06-29 14:22:29 +02:00
i2c_session i2c: extend API to support transactions 2021-05-28 14:16:45 +02:00
init Adaptation to init refactoring 2017-03-24 16:19:56 +01:00
input input: repeat events require valid codepoints 2019-11-19 14:23:54 +01:00
input_session base/os: remove deprecated APIs 2019-02-26 14:44:15 +01:00
ldso Adjust file headers to refer to the AGPLv3 2017-02-28 12:59:29 +01:00
loader_session Rename 'Nitpicker' namespace to 'Gui' 2020-06-22 09:39:40 +02:00
mixer os: avoid using deprecated APIs 2019-01-30 13:49:54 +01:00
net nic_router: propagate dns domain name via dhcp 2021-08-18 15:06:12 +02:00
nic base/cache.h: rename Cache_attribute to Cache 2021-04-20 12:10:31 +02:00
nic_session base/os: remove deprecated APIs 2019-02-26 14:44:15 +01:00
nitpicker_gfx nitpicker_gfx: Text_painter::Font::index_at_xpos 2020-02-20 12:08:16 +01:00
os base: introduce Allocator::try_alloc 2021-11-29 15:11:52 +01:00
packet_stream_rx packet_stream_*: fix missing dissolve on exception 2019-11-19 14:42:22 +01:00
packet_stream_tx packet_stream_*: fix missing dissolve on exception 2019-11-19 14:42:22 +01:00
pin_control_session os: Pin_control and Pin_state session interfaces 2021-11-29 15:10:52 +01:00
pin_state_session os: Pin_control and Pin_state session interfaces 2021-11-29 15:10:52 +01:00
platform_device base/cache.h: rename Cache_attribute to Cache 2021-04-20 12:10:31 +02:00
platform_session os: introduce common platform driver for ARM 2020-05-27 11:56:46 +02:00
pointer os: avoid garbage warnings in app/painter 2019-01-07 12:25:45 +01:00
ram_fs ram_fs: increase max file size on 64 bit to 8 GiB 2019-03-18 15:57:00 +01:00
report_rom report_rom: versioning and explicit notification 2021-10-13 14:46:54 +02:00
report_session base/os: remove deprecated APIs 2019-02-26 14:44:15 +01:00
rtc_session rtc: extended session with set-signal 2019-08-21 12:37:01 +02:00
sandbox separate sandbox api from os 2021-06-25 11:41:45 +02:00
smbios smbios.h: move to os/include/smbios 2019-11-19 14:54:12 +01:00
spec os: extend ARM Platform::Device constructor 2021-10-14 11:02:15 +02:00
terminal terminal: don't overwrite last column until eol 2021-05-05 11:35:27 +02:00
terminal_session os: use Mutex/Blockade 2020-04-17 12:40:12 +02:00
trace trace: consolidate Trace_buffer implementations 2021-08-30 15:00:37 +02:00
uart_session base/os: remove deprecated APIs 2019-02-26 14:44:15 +01:00
uplink_session os: introduce new "Uplink" session 2021-01-25 13:48:09 +01:00
usb dde_linux: usb support extra data and zero config 2020-12-09 14:02:11 +01:00
usb_session usb_host: add support to flush EP transfers 2021-06-25 11:41:44 +02:00
util utf8: non-character U+fffe as invalid codepoint 2019-08-28 14:22:32 +02:00
vfs vfs_oss: support more commands for VirtualBox 6 and sndio 2021-08-30 15:00:36 +02:00
virtio os: Add support for reading VirtIO responses. 2021-11-29 15:11:53 +01:00