Enum InterruptMode
pub enum InterruptMode {
Disabled,
Legacy,
LegacyNoack,
Msi,
MsiX,
// some variants omitted
}
Expand description
Used with ||SetInterruptMode| to configure an interrupt mode for the device. Devices configured to use the LEGACY Irq mode must ack their interrupt after servicing by calling |AckInterrupt|. To avoid this, LEGACY_NOACK can be used, but the driver’s interrupt function will be disabled by the PCI Bus Driver if it sees excessive interrupt triggers in a given period.
Variants§
Disabled
Legacy
Legacy interrupt mode.
LegacyNoack
Legacy interrupt mode (without ACKing, see |AckInterrupt|).
Msi
MSI (messaage-signaled interrupt) mode.
MsiX
MSI-X mode.
Implementations§
§impl InterruptMode
impl InterruptMode
pub fn from_primitive(prim: u8) -> Option<InterruptMode>
pub fn from_primitive_allow_unknown(prim: u8) -> InterruptMode
pub fn unknown() -> InterruptMode
pub const fn into_primitive(self) -> u8
pub fn is_unknown(&self) -> bool
Trait Implementations§
§impl Clone for InterruptMode
impl Clone for InterruptMode
§fn clone(&self) -> InterruptMode
fn clone(&self) -> InterruptMode
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 more§impl Debug for InterruptMode
impl Debug for InterruptMode
§impl<D> Decode<InterruptMode, D> for InterruptModewhere
D: ResourceDialect,
impl<D> Decode<InterruptMode, D> for InterruptModewhere
D: ResourceDialect,
§fn new_empty() -> InterruptMode
fn new_empty() -> InterruptMode
Creates a valid instance of
Self
. The specific value does not matter,
since it will be overwritten by decode
.§impl<D> Encode<InterruptMode, D> for InterruptModewhere
D: ResourceDialect,
impl<D> Encode<InterruptMode, D> for InterruptModewhere
D: ResourceDialect,
§impl Hash for InterruptMode
impl Hash for InterruptMode
§impl Ord for InterruptMode
impl Ord for InterruptMode
§impl PartialEq for InterruptMode
impl PartialEq for InterruptMode
§impl PartialOrd for InterruptMode
impl PartialOrd for InterruptMode
§impl TypeMarker for InterruptMode
impl TypeMarker for InterruptMode
§type Owned = InterruptMode
type Owned = InterruptMode
The owned Rust type which this FIDL type decodes into.
§fn inline_align(_context: Context) -> usize
fn inline_align(_context: Context) -> usize
Returns the minimum required alignment of the inline portion of the
encoded object. It must be a (nonzero) power of two.
§fn inline_size(_context: Context) -> usize
fn inline_size(_context: Context) -> usize
Returns the size of the inline portion of the encoded object, including
padding for alignment. Must be a multiple of
inline_align
.§fn encode_is_copy() -> bool
fn encode_is_copy() -> bool
Returns true if the memory layout of
Self::Owned
matches the FIDL wire
format and encoding requires no validation. When true, we can optimize
encoding arrays and vectors of Self::Owned
to a single memcpy. Read more§fn decode_is_copy() -> bool
fn decode_is_copy() -> bool
Returns true if the memory layout of
Self::Owned
matches the FIDL wire
format and decoding requires no validation. When true, we can optimize
decoding arrays and vectors of Self::Owned
to a single memcpy.§impl ValueTypeMarker for InterruptMode
impl ValueTypeMarker for InterruptMode
§type Borrowed<'a> = InterruptMode
type Borrowed<'a> = InterruptMode
The Rust type to use for encoding. This is a particular
Encode<Self>
type cheaply obtainable from &Self::Owned
. There are three cases: Read more§fn borrow(
value: &<InterruptMode as TypeMarker>::Owned,
) -> <InterruptMode as ValueTypeMarker>::Borrowed<'_>
fn borrow( value: &<InterruptMode as TypeMarker>::Owned, ) -> <InterruptMode as ValueTypeMarker>::Borrowed<'_>
Cheaply converts from
&Self::Owned
to Self::Borrowed
.impl Copy for InterruptMode
impl Eq for InterruptMode
impl StructuralPartialEq for InterruptMode
Auto Trait Implementations§
impl Freeze for InterruptMode
impl RefUnwindSafe for InterruptMode
impl Send for InterruptMode
impl Sync for InterruptMode
impl Unpin for InterruptMode
impl UnwindSafe for InterruptMode
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