unplugged-system/external/rust/crates/virtio-drivers
2025-10-06 13:59:42 +00:00
..
.github/workflows Initial commit: AOSP 14 with modifications for Unplugged OS 2025-10-06 13:59:42 +00:00
patches Initial commit: AOSP 14 with modifications for Unplugged OS 2025-10-06 13:59:42 +00:00
src Initial commit: AOSP 14 with modifications for Unplugged OS 2025-10-06 13:59:42 +00:00
.cargo_vcs_info.json Initial commit: AOSP 14 with modifications for Unplugged OS 2025-10-06 13:59:42 +00:00
Android.bp Initial commit: AOSP 14 with modifications for Unplugged OS 2025-10-06 13:59:42 +00:00
cargo2android.json Initial commit: AOSP 14 with modifications for Unplugged OS 2025-10-06 13:59:42 +00:00
Cargo.toml Initial commit: AOSP 14 with modifications for Unplugged OS 2025-10-06 13:59:42 +00:00
Cargo.toml.orig Initial commit: AOSP 14 with modifications for Unplugged OS 2025-10-06 13:59:42 +00:00
LICENSE Initial commit: AOSP 14 with modifications for Unplugged OS 2025-10-06 13:59:42 +00:00
METADATA Initial commit: AOSP 14 with modifications for Unplugged OS 2025-10-06 13:59:42 +00:00
MODULE_LICENSE_MIT Initial commit: AOSP 14 with modifications for Unplugged OS 2025-10-06 13:59:42 +00:00
OWNERS Initial commit: AOSP 14 with modifications for Unplugged OS 2025-10-06 13:59:42 +00:00
README.md Initial commit: AOSP 14 with modifications for Unplugged OS 2025-10-06 13:59:42 +00:00

VirtIO-drivers-rs

crates.io page docs.rs page CI

VirtIO guest drivers in Rust. For no_std environment.

Support status

Device types

Device Supported
Block ✅
Net ✅
GPU ✅
Input ✅
Console ✅
Socket ✅
... ❌

Transports

Transport Supported
Legacy MMIO ✅ version 1
MMIO ✅ version 2
PCI ✅ Memory-mapped CAM only, e.g. aarch64 or PCIe ECAM

Device-independent features

Feature flag Supported
VIRTIO_F_INDIRECT_DESC ❌ Indirect descriptors
VIRTIO_F_EVENT_IDX ❌ avail_event and used_event fields
VIRTIO_F_VERSION_1 TODO VirtIO version 1 compliance
VIRTIO_F_ACCESS_PLATFORM ❌ Limited device access to memory
VIRTIO_F_RING_PACKED ❌ Packed virtqueue layout
VIRTIO_F_IN_ORDER ❌ Optimisations for in-order buffer usage
VIRTIO_F_ORDER_PLATFORM ❌ Platform ordering for memory access
VIRTIO_F_SR_IOV ❌ Single root I/O virtualization
VIRTIO_F_NOTIFICATION_DATA ❌ Extra data in device notifications

Examples & Tests

  • x86_64 (TODO)

aarch64

cd examples/aarch64
make qemu

RISCV

cd examples/riscv
make qemu

You will see device info & GUI Window in qemu.