pub struct BusSynchronousProxy { /* private fields */ }
Implementations§
Source§impl BusSynchronousProxy
impl BusSynchronousProxy
pub fn new(channel: Channel) -> Self
pub fn into_channel(self) -> Channel
Sourcepub fn wait_for_event(
&self,
deadline: MonotonicInstant,
) -> Result<BusEvent, Error>
pub fn wait_for_event( &self, deadline: MonotonicInstant, ) -> Result<BusEvent, Error>
Waits until an event arrives and returns it. It is safe for other threads to make concurrent requests while waiting for an event.
Sourcepub fn get_host_bridge_info(
&self,
___deadline: MonotonicInstant,
) -> Result<HostBridgeInfo, Error>
pub fn get_host_bridge_info( &self, ___deadline: MonotonicInstant, ) -> Result<HostBridgeInfo, Error>
Retrieve information about the segment group and buses covered by a Bus.
Sourcepub fn get_devices(
&self,
___deadline: MonotonicInstant,
) -> Result<Vec<PciDevice>, Error>
pub fn get_devices( &self, ___deadline: MonotonicInstant, ) -> Result<Vec<PciDevice>, Error>
Retrieve all Devices on the Bus.
Sourcepub fn read_bar(
&self,
device: &Address,
bar_id: u8,
offset: u64,
size: u64,
___deadline: MonotonicInstant,
) -> Result<BusReadBarResult, Error>
pub fn read_bar( &self, device: &Address, bar_id: u8, offset: u64, size: u64, ___deadline: MonotonicInstant, ) -> Result<BusReadBarResult, Error>
Read from a Device’s base address register (BAR). The BAR must be an MMIO type.
Parameters |device|: The address of the device to read from. |bar_id|: The ID of the BAR to read. |offset|: The offset, in bytes, to start the read (default: 0 bytes). |size|: The size of the read (default: 128 bytes). The max size for a read is |READBAR_MAX_SIZE|.
Errors: |ZX_ERR_NOT_FOUND|: |device| was not found, or |bar_id| did not exist in |device|. |ZX_ERR_INVALID_ARGS|: |bar_id| is invalid, or offset / size combined are invalid for the given BAR’s size. |ZX_ERR_NOT_SUPPORTED|: The BAR specified by |bar_id| is not an MMIO BAR.