Snap for 12134224 from 2e8d9717d092a4e80ee1d6b12515a992fcbf3b21 to simpleperf-release
Change-Id: Id2700d03afa6282d1897c02f699eb682bfef19ac
tree: f2521eeb2a76d6cb4f8048e1d65d1c84037c73ec
- .github/
- patches/
- src/
- .cargo_vcs_info.json
- .gitignore
- Android.bp
- Cargo.toml
- Cargo.toml.orig
- cargo_embargo.json
- LICENSE
- METADATA
- MODULE_LICENSE_MIT
- OWNERS
- README.md
- rules.mk
- rust-toolchain.toml
README.md
VirtIO-drivers-rs
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
cd examples/x86_64
make qemu
cd examples/aarch64
make qemu
cd examples/riscv
make qemu
You will see device info & GUI Window in qemu.