More patches from upstream.

Added capacity method to VirtIOBlk, expose PAGE_SIZE and fix bug with
BAR size overflow.

Bug: 237249743
Test: m vmbase_example_bin
Change-Id: Ie690b04d1bd3c62b3954cc0ecd29fcf9a4474c44
3 files changed
tree: 322c9631f79ede29e3ee3abcc180489ea6efa00f
  1. .github/
  2. src/
  3. .cargo_vcs_info.json
  4. .gitignore
  5. Android.bp
  6. Cargo.toml
  7. Cargo.toml.orig
  8. cargo2android.json
  9. LICENSE
  10. METADATA
  11. MODULE_LICENSE_MIT
  12. OWNERS
  13. README.md
README.md

VirtIO-drivers-rs

CI

VirtIO guest drivers in Rust. For no_std environment.

Support status

Device types

DeviceSupported
Block
Net
GPU
Input
Console
...

Transports

TransportSupported
Legacy MMIOversion 1
MMIOversion 2
PCIMemory-mapped CAM only, e.g. aarch64 or PCIe ECAM

Device-independent features

Feature flagSupported
VIRTIO_F_INDIRECT_DESCIndirect descriptors
VIRTIO_F_EVENT_IDXavail_event and used_event fields
VIRTIO_F_VERSION_1TODOVirtIO version 1 compliance
VIRTIO_F_ACCESS_PLATFORMLimited device access to memory
VIRTIO_F_RING_PACKEDPacked virtqueue layout
VIRTIO_F_IN_ORDEROptimisations for in-order buffer usage
VIRTIO_F_ORDER_PLATFORMPlatform ordering for memory access
VIRTIO_F_SR_IOVSingle root I/O virtualization
VIRTIO_F_NOTIFICATION_DATAExtra data in device notifications

Examples & Tests