pub enum Phase {
Unspecified,
Init,
CommandSend,
ResponseWait,
DataWrite,
DataRead,
BusyWait,
Switch,
Erase,
}Expand description
Where in the driver pipeline a fault was observed.
Attached to recoverable Error variants via ErrorContext so callers
can distinguish e.g. a CMD0 send timeout from a BusyWait programming
timeout without parsing log strings.
Variants§
Unspecified
Phase was not recorded.
Used as a default placeholder; real driver paths should pick a concrete variant.
Init
Power-up / running CMD0 → ACMD41 / sending CMD2/3/9/7.
CommandSend
Putting the command bytes onto the bus.
ResponseWait
Waiting for the card’s response token / R1–R7 payload.
DataWrite
Streaming a data block to the card (CMD24 / CMD25 etc).
DataRead
Streaming a data block from the card (CMD17 / CMD18 etc).
BusyWait
Polling the card’s busy line / programming status.
Switch
Switching bus speed, width or function (CMD6 / ACMD6).
Erase
Erase sequence (CMD32 / CMD33 / CMD38).
Trait Implementations§
impl Copy for Phase
impl Eq for Phase
impl StructuralPartialEq for Phase
Auto Trait Implementations§
impl Freeze for Phase
impl RefUnwindSafe for Phase
impl Send for Phase
impl Sync for Phase
impl Unpin for Phase
impl UnsafeUnpin for Phase
impl UnwindSafe for Phase
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