Skip to main content

GcmdReg

Struct GcmdReg 

Source
pub struct GcmdReg(/* private fields */);
Expand description

Global Command Register (MMIO offset 0x018, 32-bit, WO). §10.4.4.

Write-only register for controlling IOMMU operation. Reads return 0. Each bit triggers a corresponding action; status is reflected in GSTS.

Implementations§

Source§

impl GcmdReg

Source

pub const fn new() -> Self

Creates a new default initialized bitfield.

Source

pub const fn from_bits(bits: u32) -> Self

Convert from bits.

Source

pub const fn into_bits(self) -> u32

Convert into bits.

Source

pub const fn cfi(&self) -> bool

Compatibility Format Interrupt — pass through compatibility-format MSIs when IR is enabled.

Bits: 23..24

Source

pub const fn with_cfi_checked(self, value: bool) -> Result<Self, ()>

Compatibility Format Interrupt — pass through compatibility-format MSIs when IR is enabled.

Bits: 23..24

Source

pub const fn with_cfi(self, value: bool) -> Self

Compatibility Format Interrupt — pass through compatibility-format MSIs when IR is enabled.

Bits: 23..24

Source

pub const fn set_cfi(&mut self, value: bool)

Compatibility Format Interrupt — pass through compatibility-format MSIs when IR is enabled.

Bits: 23..24

Source

pub const fn set_cfi_checked(&mut self, value: bool) -> Result<(), ()>

Compatibility Format Interrupt — pass through compatibility-format MSIs when IR is enabled.

Bits: 23..24

Source

pub const fn sirtp(&self) -> bool

Set Interrupt Remapping Table Pointer — latch IRTA register.

Bits: 24..25

Source

pub const fn with_sirtp_checked(self, value: bool) -> Result<Self, ()>

Set Interrupt Remapping Table Pointer — latch IRTA register.

Bits: 24..25

Source

pub const fn with_sirtp(self, value: bool) -> Self

Set Interrupt Remapping Table Pointer — latch IRTA register.

Bits: 24..25

Source

pub const fn set_sirtp(&mut self, value: bool)

Set Interrupt Remapping Table Pointer — latch IRTA register.

Bits: 24..25

Source

pub const fn set_sirtp_checked(&mut self, value: bool) -> Result<(), ()>

Set Interrupt Remapping Table Pointer — latch IRTA register.

Bits: 24..25

Source

pub const fn ire(&self) -> bool

Interrupt Remapping Enable.

Bits: 25..26

Source

pub const fn with_ire_checked(self, value: bool) -> Result<Self, ()>

Interrupt Remapping Enable.

Bits: 25..26

Source

pub const fn with_ire(self, value: bool) -> Self

Interrupt Remapping Enable.

Bits: 25..26

Source

pub const fn set_ire(&mut self, value: bool)

Interrupt Remapping Enable.

Bits: 25..26

Source

pub const fn set_ire_checked(&mut self, value: bool) -> Result<(), ()>

Interrupt Remapping Enable.

Bits: 25..26

Source

pub const fn qie(&self) -> bool

Queued Invalidation Enable.

Bits: 26..27

Source

pub const fn with_qie_checked(self, value: bool) -> Result<Self, ()>

Queued Invalidation Enable.

Bits: 26..27

Source

pub const fn with_qie(self, value: bool) -> Self

Queued Invalidation Enable.

Bits: 26..27

Source

pub const fn set_qie(&mut self, value: bool)

Queued Invalidation Enable.

Bits: 26..27

Source

pub const fn set_qie_checked(&mut self, value: bool) -> Result<(), ()>

Queued Invalidation Enable.

Bits: 26..27

Source

pub const fn wbf(&self) -> bool

Write Buffer Flush — flush internal write buffers.

Bits: 27..28

Source

pub const fn with_wbf_checked(self, value: bool) -> Result<Self, ()>

Write Buffer Flush — flush internal write buffers.

Bits: 27..28

Source

pub const fn with_wbf(self, value: bool) -> Self

Write Buffer Flush — flush internal write buffers.

Bits: 27..28

Source

pub const fn set_wbf(&mut self, value: bool)

Write Buffer Flush — flush internal write buffers.

Bits: 27..28

Source

pub const fn set_wbf_checked(&mut self, value: bool) -> Result<(), ()>

Write Buffer Flush — flush internal write buffers.

Bits: 27..28

Source

pub const fn eafl(&self) -> bool

Enable Advanced Fault Logging (not supported, treated as no-op).

Bits: 28..29

Source

pub const fn with_eafl_checked(self, value: bool) -> Result<Self, ()>

Enable Advanced Fault Logging (not supported, treated as no-op).

Bits: 28..29

Source

pub const fn with_eafl(self, value: bool) -> Self

Enable Advanced Fault Logging (not supported, treated as no-op).

Bits: 28..29

Source

pub const fn set_eafl(&mut self, value: bool)

Enable Advanced Fault Logging (not supported, treated as no-op).

Bits: 28..29

Source

pub const fn set_eafl_checked(&mut self, value: bool) -> Result<(), ()>

Enable Advanced Fault Logging (not supported, treated as no-op).

Bits: 28..29

Source

pub const fn sfl(&self) -> bool

Set Fault Log (not supported, treated as no-op).

Bits: 29..30

Source

pub const fn with_sfl_checked(self, value: bool) -> Result<Self, ()>

Set Fault Log (not supported, treated as no-op).

Bits: 29..30

Source

pub const fn with_sfl(self, value: bool) -> Self

Set Fault Log (not supported, treated as no-op).

Bits: 29..30

Source

pub const fn set_sfl(&mut self, value: bool)

Set Fault Log (not supported, treated as no-op).

Bits: 29..30

Source

pub const fn set_sfl_checked(&mut self, value: bool) -> Result<(), ()>

Set Fault Log (not supported, treated as no-op).

Bits: 29..30

Source

pub const fn srtp(&self) -> bool

Set Root Table Pointer — latch RTADDR register.

Bits: 30..31

Source

pub const fn with_srtp_checked(self, value: bool) -> Result<Self, ()>

Set Root Table Pointer — latch RTADDR register.

Bits: 30..31

Source

pub const fn with_srtp(self, value: bool) -> Self

Set Root Table Pointer — latch RTADDR register.

Bits: 30..31

Source

pub const fn set_srtp(&mut self, value: bool)

Set Root Table Pointer — latch RTADDR register.

Bits: 30..31

Source

pub const fn set_srtp_checked(&mut self, value: bool) -> Result<(), ()>

Set Root Table Pointer — latch RTADDR register.

Bits: 30..31

Source

pub const fn te(&self) -> bool

Translation Enable — enable/disable DMA translation.

Bits: 31..32

Source

pub const fn with_te_checked(self, value: bool) -> Result<Self, ()>

Translation Enable — enable/disable DMA translation.

Bits: 31..32

Source

pub const fn with_te(self, value: bool) -> Self

Translation Enable — enable/disable DMA translation.

Bits: 31..32

Source

pub const fn set_te(&mut self, value: bool)

Translation Enable — enable/disable DMA translation.

Bits: 31..32

Source

pub const fn set_te_checked(&mut self, value: bool) -> Result<(), ()>

Translation Enable — enable/disable DMA translation.

Bits: 31..32

Trait Implementations§

Source§

impl Clone for GcmdReg

Source§

fn clone(&self) -> GcmdReg

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for GcmdReg

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for GcmdReg

Source§

fn default() -> Self

Returns the “default value” for a type. Read more
Source§

impl From<GcmdReg> for u32

Source§

fn from(v: GcmdReg) -> u32

Converts to this type from the input type.
Source§

impl From<u32> for GcmdReg

Source§

fn from(v: u32) -> Self

Converts to this type from the input type.
Source§

impl Inspect for GcmdReg

Source§

fn inspect(&self, req: Request<'_>)

Inspects the object.
Source§

impl Copy for GcmdReg

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<T> Instrument for T

§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided [Span], returning an Instrumented wrapper. Read more
§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a [WithDispatch] wrapper. Read more