#[repr(u8)]pub enum EmuDeviceType {
Dummy = 0,
InterruptController = 1,
Console = 2,
IVCChannel = 10,
GPPTRedistributor = 32,
GPPTDistributor = 33,
GPPTITS = 34,
PPPTGlobal = 48,
VirtioBlk = 225,
VirtioNet = 226,
VirtioConsole = 227,
}Expand description
The type of Emulated Device.
Allocation scheme:
- 0x00 - 0x1F: Special devices, and abstract device types that does not specify a concrete interface or implementation. The device objects created from these types depend on the target architecture and the specific implementation of the hypervisor.
- 0x20 - 0x7F: Concrete emulated device types.
- 0x20 - 0x2F: Interrupt controller devices.
- 0x30 - 0x3F: Reserved for future use.
- 0x80 - 0xDF: Reserved for future use.
- 0xE0 - 0xEF: Virtio devices.
- 0xF0 - 0xFF: Reserved for future use.
Variants§
Dummy = 0
Dummy device type.
InterruptController = 1
Interrupt controller device, e.g. vGICv2 in aarch64, vLAPIC in x86.
Console = 2
Console (serial) device.
IVCChannel = 10
An emulated device that provides Inter-VM Communication (IVC) channel.
This device is used for communication between different VMs,
the corresponding memory region of this device should be marked as Reserved in
device tree or ACPI table.
GPPTRedistributor = 32
ARM GIC Partial Passthrough Redistributor device.
GPPTDistributor = 33
ARM GIC Partial Passthrough Distributor device.
GPPTITS = 34
ARM GIC Partial Passthrough Interrupt Translation Service device.
PPPTGlobal = 48
RISC-V PLIC Partial Passthrough Global device.
VirtioBlk = 225
Virtio block device.
VirtioNet = 226
Virtio net device.
VirtioConsole = 227
Virtio console device.
Implementations§
Source§impl EmulatedDeviceType
Implementation of methods for EmulatedDeviceType.
impl EmulatedDeviceType
Implementation of methods for EmulatedDeviceType.
Sourcepub fn from_usize(value: usize) -> EmulatedDeviceType
pub fn from_usize(value: usize) -> EmulatedDeviceType
Converts a usize value to an EmulatedDeviceType.
Trait Implementations§
Source§impl Clone for EmulatedDeviceType
impl Clone for EmulatedDeviceType
Source§fn clone(&self) -> EmulatedDeviceType
fn clone(&self) -> EmulatedDeviceType
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for EmulatedDeviceType
impl Debug for EmulatedDeviceType
Source§impl Default for EmulatedDeviceType
impl Default for EmulatedDeviceType
Source§fn default() -> EmulatedDeviceType
fn default() -> EmulatedDeviceType
Source§impl<'de> Deserialize<'de> for EmulatedDeviceType
impl<'de> Deserialize<'de> for EmulatedDeviceType
Source§fn deserialize<D>(
deserializer: D,
) -> Result<EmulatedDeviceType, <D as Deserializer<'de>>::Error>where
D: Deserializer<'de>,
fn deserialize<D>(
deserializer: D,
) -> Result<EmulatedDeviceType, <D as Deserializer<'de>>::Error>where
D: Deserializer<'de>,
Source§impl Display for EmulatedDeviceType
impl Display for EmulatedDeviceType
Source§impl Enumerable for EmulatedDeviceType
impl Enumerable for EmulatedDeviceType
Source§const ENUMERABLE_SIZE_OPTION: Option<usize>
const ENUMERABLE_SIZE_OPTION: Option<usize>
Option::Some if it does not exceed usize::MAX, None otherwise. Read moreSource§type Enumerator = Copied<Iter<'static, EmulatedDeviceType>>
type Enumerator = Copied<Iter<'static, EmulatedDeviceType>>
enumerator method.Source§fn enumerator() -> <EmulatedDeviceType as Enumerable>::Enumerator
fn enumerator() -> <EmulatedDeviceType as Enumerable>::Enumerator
Source§const ENUMERABLE_SIZE: usize = _
const ENUMERABLE_SIZE: usize = _
usize::MAX, accessing this constant fails at compile time. Read moreSource§impl PartialEq for EmulatedDeviceType
impl PartialEq for EmulatedDeviceType
Source§fn eq(&self, other: &EmulatedDeviceType) -> bool
fn eq(&self, other: &EmulatedDeviceType) -> bool
self and other values to be equal, and is used by ==.