Struct dmar::DmarDrhd

source ·
pub struct DmarDrhd<'t> { /* private fields */ }
Expand description

DRHD: DMAR Hardware Unit Definition Structure.

This table is described in Section 8.3 of the VT Directed I/O Spec.

Implementations§

source§

impl<'t> DmarDrhd<'t>

source

pub fn iter(&self) -> DrhdIter<'t>

Returns an Iterator over the DmarDeviceScope entries in this DRHD, which are variable in both number and size.

source

pub fn include_pci_all(&self) -> bool

Returns the value of the INCLUDE_PCI_ALL flag, the only bit flag in this DRHD table.

Description from Intel Spec

If false, this remapping hardware unit has under its scope only devices in the specified segment that are explicitly identified through the Device Scope field. The device can be of any type as described by the Type field in the Device Scope Structure including (but not limited to) IOAPIC and HPET.

If true, this remapping hardware unit has under its scope all PCI compatible devices in the specified segment, except devices reported under the scope of other remapping hardware units for the same segment. As such, one can use the Device Scope structures to enumerate IOAPIC and HPET devices under its scope.

source

pub fn segment_number(&self) -> u16

Returns the PCI segment number associated with this DRHD.

source

pub fn register_base_address(&self) -> u64

Returns the base address of this DRHD’s remapping hardware register set.

Trait Implementations§

source§

impl<'t> Debug for DmarDrhd<'t>

source§

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

Formats the value using the given formatter. Read more

Auto Trait Implementations§

§

impl<'t> RefUnwindSafe for DmarDrhd<'t>

§

impl<'t> Send for DmarDrhd<'t>

§

impl<'t> Sync for DmarDrhd<'t>

§

impl<'t> Unpin for DmarDrhd<'t>

§

impl<'t> UnwindSafe for DmarDrhd<'t>

Blanket Implementations§

source§

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

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

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

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

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

source§

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

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for Twhere 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, U> TryFrom<U> for Twhere U: Into<T>,

§

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 Twhere U: TryFrom<T>,

§

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.