Struct rk3399_pac::Dmac0
source · pub struct Dmac0 { /* private fields */ }
Expand description
DMA Controller 0 Registers
Implementations§
source§impl Dmac0
impl Dmac0
sourcepub const PTR: *const RegisterBlock = {0xff6d0000 as *const dmac::RegisterBlock}
pub const PTR: *const RegisterBlock = {0xff6d0000 as *const dmac::RegisterBlock}
Pointer to the register block
sourcepub const fn ptr() -> *const RegisterBlock
pub const fn ptr() -> *const RegisterBlock
Return the pointer to the register block
sourcepub unsafe fn steal() -> Self
pub unsafe fn steal() -> Self
Steal an instance of this peripheral
§Safety
Ensure that the new instance of the peripheral cannot be used in a way that may race with any existing instances, for example by only accessing read-only or write-only registers, or by consuming the original peripheral and using critical sections to coordinate access between multiple new instances.
Additionally, other software such as HALs may rely on only one peripheral instance existing to ensure memory safety; ensure no stolen instances are passed to such software.
Methods from Deref<Target = RegisterBlock>§
sourcepub fn ftr_iter(&self) -> impl Iterator<Item = &Ftr>
pub fn ftr_iter(&self) -> impl Iterator<Item = &Ftr>
Iterator for array of: 0x40..0x60 - Fault Type DMA Channel Register
sourcepub fn csr_iter(&self) -> impl Iterator<Item = &Csr>
pub fn csr_iter(&self) -> impl Iterator<Item = &Csr>
Iterator for array of: 0x100..0x120 - Channel Status Registers
sourcepub fn cpc_iter(&self) -> impl Iterator<Item = &Cpc>
pub fn cpc_iter(&self) -> impl Iterator<Item = &Cpc>
Iterator for array of: 0x104..0x124 - Channel Program Counter Registers
sourcepub fn sar_iter(&self) -> impl Iterator<Item = &Sar>
pub fn sar_iter(&self) -> impl Iterator<Item = &Sar>
Iterator for array of: 0x400..0x420 - Source Address Registers
sourcepub fn dar_iter(&self) -> impl Iterator<Item = &Dar>
pub fn dar_iter(&self) -> impl Iterator<Item = &Dar>
Iterator for array of: 0x404..0x424 - DestinationAddress Registers
sourcepub fn ccr_iter(&self) -> impl Iterator<Item = &Ccr>
pub fn ccr_iter(&self) -> impl Iterator<Item = &Ccr>
Iterator for array of: 0x408..0x428 - Channel Control Registers
sourcepub fn lc0_iter(&self) -> impl Iterator<Item = &Lc0>
pub fn lc0_iter(&self) -> impl Iterator<Item = &Lc0>
Iterator for array of: 0x40c..0x42c - Loop Counter 0 Registers