#[non_exhaustive]#[repr(u32)]pub enum VirtIODeviceType {
Show 22 variants
NetworkCard = 1,
BlockDevice = 2,
Console = 3,
EntropySource = 4,
TraditionalMemoryBallooning = 5,
IoMemory = 6,
RPMSG = 7,
SCSIHost = 8,
Transport9P = 9,
Mac80211Wlan = 10,
RPROCSerial = 11,
VirtIOCAIF = 12,
MemoryBalloon = 13,
GPUDevice = 14,
TimerClockDevice = 15,
InputDevice = 16,
SocketDevice = 17,
CryptoDevice = 18,
SignalDistributionModule = 19,
PstoreDevice = 20,
IOMMUDevice = 21,
MemoryDevice = 22,
}
Expand description
VirtIO Device Types.
VirtIO is a flexible bus which can be used to expose various kinds of virtual devices, such as network drivers, serial consoles, block devices or random number generators. A VirtIO bus endpoint announces which type of device it represents (and hence also which rules and semantics the VirtIO driver should follow).
This enum maps the VirtIO device IDs to human-readable variants of an enum, which can be used throughout the code base. Users should not rely on this enum not being extended. Whenever an official device ID is missing, it can be added to this enumeration.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
NetworkCard = 1
BlockDevice = 2
Console = 3
EntropySource = 4
TraditionalMemoryBallooning = 5
IoMemory = 6
RPMSG = 7
SCSIHost = 8
Transport9P = 9
Mac80211Wlan = 10
RPROCSerial = 11
VirtIOCAIF = 12
MemoryBalloon = 13
GPUDevice = 14
TimerClockDevice = 15
InputDevice = 16
SocketDevice = 17
CryptoDevice = 18
SignalDistributionModule = 19
PstoreDevice = 20
IOMMUDevice = 21
MemoryDevice = 22
Implementations§
Source§impl VirtIODeviceType
impl VirtIODeviceType
Sourcepub fn from_device_id(id: u32) -> Option<VirtIODeviceType>
pub fn from_device_id(id: u32) -> Option<VirtIODeviceType>
Try to create a VirtIODeviceType
enum variant from a supplied
numeric device ID.
Sourcepub fn to_device_id(device_type: VirtIODeviceType) -> u32
pub fn to_device_id(device_type: VirtIODeviceType) -> u32
Convert a VirtIODeviceType
variant to its corresponding device ID.
Trait Implementations§
Source§impl Clone for VirtIODeviceType
impl Clone for VirtIODeviceType
Source§fn clone(&self) -> VirtIODeviceType
fn clone(&self) -> VirtIODeviceType
Returns a copy of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreSource§impl Debug for VirtIODeviceType
impl Debug for VirtIODeviceType
Source§impl PartialEq for VirtIODeviceType
impl PartialEq for VirtIODeviceType
impl Copy for VirtIODeviceType
impl Eq for VirtIODeviceType
impl StructuralPartialEq for VirtIODeviceType
Auto Trait Implementations§
impl Freeze for VirtIODeviceType
impl RefUnwindSafe for VirtIODeviceType
impl Send for VirtIODeviceType
impl Sync for VirtIODeviceType
impl Unpin for VirtIODeviceType
impl UnwindSafe for VirtIODeviceType
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