pub struct Sio { /* private fields */ }
Expand description
Single-cycle IO block Provides core-local and inter-core hardware for the two processors, with single-cycle access.
Implementations§
Source§impl Sio
impl Sio
pub const unsafe fn from_ptr(ptr: *mut ()) -> Self
pub const fn as_ptr(&self) -> *mut ()
pub const fn gpio_out(self, n: usize) -> Gpio
pub const fn gpio_oe(self, n: usize) -> Gpio
pub const fn fifo(self) -> Fifo
Sourcepub const fn spinlock_st(self) -> Reg<u32, RW>
pub const fn spinlock_st(self) -> Reg<u32, RW>
Spinlock state A bitmap containing the state of all 32 spinlocks (1=locked). Mainly intended for debugging.
pub const fn div(self) -> Div
pub const fn interp(self, n: usize) -> Interp
Sourcepub const fn spinlock(self, n: usize) -> Reg<u32, RW>
pub const fn spinlock(self, n: usize) -> Reg<u32, RW>
Reading from a spinlock address will: - Return 0 if lock is already locked - Otherwise return nonzero, and simultaneously claim the lock Writing (any value) releases the lock. If core 0 and core 1 attempt to claim the same lock simultaneously, core 0 wins. The value returned on success is 0x1 << lock number.
Trait Implementations§
impl Copy for Sio
impl Eq for Sio
impl Send for Sio
impl StructuralPartialEq for Sio
impl Sync for Sio
Auto Trait Implementations§
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