#[repr(C)]pub struct VirtioMmioHeader {Show 24 fields
pub magic: Volatile<u32, Read>,
pub version: Volatile<u32, Read>,
pub device_id: Volatile<u32, Read>,
pub vendor_id: Volatile<u32, Read>,
pub device_features: Volatile<u32, Read>,
pub device_feature_select: Volatile<u32, Write>,
pub driver_features: Volatile<u32, Write>,
pub driver_feature_select: Volatile<u32, Write>,
pub queue_select: Volatile<u32, Write>,
pub queue_size_max: Volatile<u32, Read>,
pub queue_size: Volatile<u32, ReadWrite>,
pub queue_ready: Volatile<u32, ReadWrite>,
pub queue_notify: Volatile<u32, Write>,
pub interrupt_status: Volatile<u32, Read>,
pub interrupt_ack: Volatile<u32, Write>,
pub status: Volatile<u32, ReadWrite>,
pub queue_descriptor: Volatile<[u32; 2], ReadWrite>,
pub queue_driver: Volatile<[u32; 2], ReadWrite>,
pub queue_device: Volatile<[u32; 2], ReadWrite>,
pub shared_memory_select: Volatile<u32, Write>,
pub shared_memory_len: Volatile<[u32; 2], Read>,
pub shared_memory_base: Volatile<[u32; 2], Read>,
pub queue_reset: Volatile<u32, ReadWrite>,
pub config_generation: Volatile<u32, Read>,
/* private fields */
}
Fields§
§magic: Volatile<u32, Read>
§version: Volatile<u32, Read>
§device_id: Volatile<u32, Read>
§vendor_id: Volatile<u32, Read>
§device_features: Volatile<u32, Read>
§device_feature_select: Volatile<u32, Write>
§driver_features: Volatile<u32, Write>
§driver_feature_select: Volatile<u32, Write>
§queue_select: Volatile<u32, Write>
§queue_size_max: Volatile<u32, Read>
§queue_size: Volatile<u32, ReadWrite>
§queue_ready: Volatile<u32, ReadWrite>
§queue_notify: Volatile<u32, Write>
§interrupt_status: Volatile<u32, Read>
§interrupt_ack: Volatile<u32, Write>
§status: Volatile<u32, ReadWrite>
§queue_descriptor: Volatile<[u32; 2], ReadWrite>
§queue_driver: Volatile<[u32; 2], ReadWrite>
§queue_device: Volatile<[u32; 2], ReadWrite>
§queue_reset: Volatile<u32, ReadWrite>
§config_generation: Volatile<u32, Read>
Implementations§
Source§impl VirtioMmioHeader
impl VirtioMmioHeader
pub fn reset(&mut self)
pub fn set_status_flag(&mut self, flag: StatusFlags)
pub fn is_magic_valid(&self) -> bool
pub fn device_type(&self) -> Result<DeviceType, ()>
pub fn is_status_flag_set(&self, flag: StatusFlags) -> bool
pub fn set_queue_descriptor(&mut self, physical: u64)
pub fn set_queue_driver(&mut self, physical: u64)
pub fn set_queue_device(&mut self, physical: u64)
pub fn mark_queue_ready(&mut self)
Auto Trait Implementations§
impl !Freeze for VirtioMmioHeader
impl !RefUnwindSafe for VirtioMmioHeader
impl Send for VirtioMmioHeader
impl Sync for VirtioMmioHeader
impl Unpin for VirtioMmioHeader
impl UnwindSafe for VirtioMmioHeader
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more