Struct devices::pci::pci_root::PciRootMmioState
source · struct PciRootMmioState {
mappings: BTreeMap<u32, Option<(SharedMemory, MemoryMapping)>>,
base: GuestAddress,
register_bit_num: usize,
}
Fields§
§mappings: BTreeMap<u32, Option<(SharedMemory, MemoryMapping)>>
Contains pages mapped read-only into the guest’s MMIO space corresponding to the PCI configuration space. Keys are the offset in number of pages from the start of MMIO space. If a particular value is None, then at least one attached device on that page does not support read-only mapped MMIO.
base: GuestAddress
Base address of the PCI configuration space’s MMIO region.
register_bit_num: usize
Number of bits in the address space of a particular function’s MMIO space.
Implementations§
source§impl PciRootMmioState
impl PciRootMmioState
fn setup_mapping<T>(
&mut self,
address: &PciAddress,
device: &mut dyn BusDevice,
mapper: &mut T
) -> Result<()>where
T: PciMmioMapper,
fn set_mfd_bit(&mut self, address: &PciAddress, is_mfd: bool)
Trait Implementations§
Auto Trait Implementations§
impl RefUnwindSafe for PciRootMmioState
impl Send for PciRootMmioState
impl Sync for PciRootMmioState
impl Unpin for PciRootMmioState
impl UnwindSafe for PciRootMmioState
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
§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Convert
Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
.§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Convert
Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
.§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s.§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert
&mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s.