pub struct Chipset { /* private fields */ }
Expand description
The “glue” that interconnects virtual devices, and exposes an API for external entities (such as VCPUs) to access devices.
Implementations§
Source§impl Chipset
impl Chipset
Sourcepub async fn mmio_read(&self, vp: u32, address: u64, data: &mut [u8])
pub async fn mmio_read(&self, vp: u32, address: u64, data: &mut [u8])
Dispatch a MMIO read to the given address.
Sourcepub async fn mmio_write(&self, vp: u32, address: u64, data: &[u8])
pub async fn mmio_write(&self, vp: u32, address: u64, data: &[u8])
Dispatch a MMIO write to the given address.
Sourcepub async fn io_read(&self, vp: u32, port: u16, data: &mut [u8])
pub async fn io_read(&self, vp: u32, port: u16, data: &mut [u8])
Dispatch a Port IO read to the given address.
Sourcepub async fn io_write(&self, vp: u32, port: u16, data: &[u8])
pub async fn io_write(&self, vp: u32, port: u16, data: &[u8])
Dispatch a Port IO write to the given address.
Sourcepub fn acknowledge_pic_interrupt(&self) -> Option<u8>
pub fn acknowledge_pic_interrupt(&self) -> Option<u8>
Gets the vector of the next interrupt to inject from the legacy interrupt controller (PIC) and sets the IRQ in service.
Sourcepub fn handle_eoi(&self, irq: u32)
pub fn handle_eoi(&self, irq: u32)
Handle End Of Interrupt (EOI)
A u32
is used for the IRQ value for (future) ARM compat.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for Chipset
impl !RefUnwindSafe for Chipset
impl Send for Chipset
impl Sync for Chipset
impl Unpin for Chipset
impl !UnwindSafe for Chipset
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