pub struct AcpiSmmuConfig {
pub rc_index: u32,
pub segment: u16,
pub base: u64,
pub event_gsiv: u32,
pub gerr_gsiv: u32,
pub reserved_iova_ranges: Vec<MemoryRange>,
}Expand description
Configuration for the SMMUv3 ACPI IORT node.
Fields§
§rc_index: u32Index of the root complex this SMMU covers (matches
PcieHostBridge.index). Used to route each RC’s IORT ID mapping
to its specific SMMU node.
segment: u16PCIe segment number of the root complex this SMMU covers. Used as
the output_base in the SMMU→ITS ID mapping to produce globally
unique ITS device IDs: (segment << 16) | BDF.
base: u64MMIO base address of the SMMU.
event_gsiv: u32GIC SPI INTID for the event queue interrupt.
gerr_gsiv: u32GIC SPI INTID for the global error interrupt.
reserved_iova_ranges: Vec<MemoryRange>IOVA ranges reserved by the host IOMMU (e.g., MSI windows). When
non-empty, an IORT RMR node (or DT reserved-memory entry) is
generated so the guest identity-maps these ranges in its S1 page
tables.
Trait Implementations§
Source§impl Clone for AcpiSmmuConfig
impl Clone for AcpiSmmuConfig
Source§fn clone(&self) -> AcpiSmmuConfig
fn clone(&self) -> AcpiSmmuConfig
Returns a duplicate 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 moreAuto Trait Implementations§
impl Freeze for AcpiSmmuConfig
impl RefUnwindSafe for AcpiSmmuConfig
impl Send for AcpiSmmuConfig
impl Sync for AcpiSmmuConfig
impl Unpin for AcpiSmmuConfig
impl UnsafeUnpin for AcpiSmmuConfig
impl UnwindSafe for AcpiSmmuConfig
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