1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
//! # AxVirtIO Network Device
//!
//! A `no_std` VirtIO 1.x MMIO network device model for the ArceOS-Hypervisor
//! ecosystem. It owns only the VirtIO-net wire format, configuration and RX/TX
//! behavior on top of [`axvirtio_common`]; TAP/virtual-switch lifecycle and
//! virtual IRQ injection belong to the VMM glue.
//!
//! ## First-version scope
//!
//! - VirtIO 1.x MMIO transport, device ID `1` (network).
//! - Split virtqueue with one RX/TX queue pair.
//! - Features: `VIRTIO_F_VERSION_1`, `VIRTIO_NET_F_MAC`, `VIRTIO_NET_F_STATUS`.
//! - Legacy 10-byte and modern 12-byte `virtio_net_hdr` layouts; RX writes a
//! zero header and TX rejects any requested offload.
//! - Explicit host-driven RX via [`VirtioMmioNetDevice::receive_frame`].
//!
//! Out of scope: control queue, multiqueue, mergeable buffers, indirect
//! descriptors, event index, checksum/GSO offload.
extern crate alloc;
pub use ;
pub use NetworkBackend;
pub use ;
pub use *;
pub use ;
pub use ;
pub use VirtioNetHdr;
pub use ManagedVirtioNetDevice;