Enum chipset_device::io::IoResult
source · pub enum IoResult {
Ok,
Err(IoError),
Defer(DeferredToken),
}
Expand description
The result returned by a device IO (memory-mapped IO, port IO, or PCI Config
Space) operation, as in methods of MmioIntercept
,
PortIoIntercept
, or
PciConfigSpace
.
Variants§
Ok
The IO operation succeeded.
Err(IoError)
The IO operation failed due to an access error.
The caller should log the failure, then ignore writes, and fill the
buffer with an appropriate bus-specific error value on reads. e.g. For
port IO or memory-mapped IO this value is typically !0
, while for PCI
config space the value is typically 0
.
Defer(DeferredToken)
Defer this request until deferred::DeferredRead::complete
or
deferred::DeferredWrite::complete
is called.
Implementations§
Trait Implementations§
Auto Trait Implementations§
impl Freeze for IoResult
impl !RefUnwindSafe for IoResult
impl Send for IoResult
impl Sync for IoResult
impl Unpin for IoResult
impl !UnwindSafe for IoResult
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