pub struct ResetController<D: DelayNs> { /* private fields */ }Expand description
Owns a DelayNs implementation and exposes the soft-reset routine.
Implementations§
Source§impl<D: DelayNs> ResetController<D>
impl<D: DelayNs> ResetController<D>
Sourcepub fn new(delay: D) -> Self
pub fn new(delay: D) -> Self
Build a controller with the SOFT_RESET_TIMEOUT_MS default.
Sourcepub fn with_timeout(delay: D, timeout_ms: u32) -> Self
pub fn with_timeout(delay: D, timeout_ms: u32) -> Self
Build a controller with a caller-chosen timeout.
Sourcepub fn soft_reset(&mut self) -> Result<(), ResetError>
pub fn soft_reset(&mut self) -> Result<(), ResetError>
Issue the DMA software reset and wait for DMABUSMODE.SWR to
self-clear. Returns ResetError::Timeout if it does not happen
within timeout_ms. The reset clears the entire DMA + MAC core to
its hardware-default state.
Sourcepub fn timeout_ms(&self) -> u32
pub fn timeout_ms(&self) -> u32
Configured timeout in milliseconds.
Auto Trait Implementations§
impl<D> Freeze for ResetController<D>where
D: Freeze,
impl<D> RefUnwindSafe for ResetController<D>where
D: RefUnwindSafe,
impl<D> Send for ResetController<D>where
D: Send,
impl<D> Sync for ResetController<D>where
D: Sync,
impl<D> Unpin for ResetController<D>where
D: Unpin,
impl<D> UnsafeUnpin for ResetController<D>where
D: UnsafeUnpin,
impl<D> UnwindSafe for ResetController<D>where
D: UnwindSafe,
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