Struct rk3399_pac::Dmac0

source ·
pub struct Dmac0 { /* private fields */ }
Expand description

DMA Controller 0 Registers

Implementations§

source§

impl Dmac0

source

pub const PTR: *const RegisterBlock = {0xff6d0000 as *const dmac::RegisterBlock}

Pointer to the register block

source

pub const fn ptr() -> *const RegisterBlock

Return the pointer to the register block

source

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>§

source

pub fn dsr(&self) -> &Dsr

0x00 - DMA Manager Status Register

source

pub fn dpc(&self) -> &Dpc

0x04 - DMA Program Counter Register

source

pub fn inten(&self) -> &Inten

0x20 - Interrupt Enable Register

source

pub fn event_ris(&self) -> &EventRis

0x24 - Event-Interrupt Raw Status Register

source

pub fn intmis(&self) -> &Intmis

0x28 - Interrupt Status Register

source

pub fn intclr(&self) -> &Intclr

0x2c - Interrupt Clear Register

source

pub fn fsrd(&self) -> &Fsrd

0x30 - Fault Status DMA Manager Register

source

pub fn fsrc(&self) -> &Fsrc

0x34 - Fault Status DMA Channel Register

source

pub fn ftrd(&self) -> &Ftrd

0x38 - Fault Type DMA Manager Register

source

pub fn ftr(&self, n: usize) -> &Ftr

0x40..0x60 - Fault Type DMA Channel Register

source

pub fn ftr_iter(&self) -> impl Iterator<Item = &Ftr>

Iterator for array of: 0x40..0x60 - Fault Type DMA Channel Register

source

pub fn csr(&self, n: usize) -> &Csr

0x100..0x120 - Channel Status Registers

source

pub fn csr_iter(&self) -> impl Iterator<Item = &Csr>

Iterator for array of: 0x100..0x120 - Channel Status Registers

source

pub fn cpc(&self, n: usize) -> &Cpc

0x104..0x124 - Channel Program Counter Registers

source

pub fn cpc_iter(&self) -> impl Iterator<Item = &Cpc>

Iterator for array of: 0x104..0x124 - Channel Program Counter Registers

source

pub fn sar(&self, n: usize) -> &Sar

0x400..0x420 - Source Address Registers

source

pub fn sar_iter(&self) -> impl Iterator<Item = &Sar>

Iterator for array of: 0x400..0x420 - Source Address Registers

source

pub fn dar(&self, n: usize) -> &Dar

0x404..0x424 - DestinationAddress Registers

source

pub fn dar_iter(&self) -> impl Iterator<Item = &Dar>

Iterator for array of: 0x404..0x424 - DestinationAddress Registers

source

pub fn ccr(&self, n: usize) -> &Ccr

0x408..0x428 - Channel Control Registers

source

pub fn ccr_iter(&self) -> impl Iterator<Item = &Ccr>

Iterator for array of: 0x408..0x428 - Channel Control Registers

source

pub fn lc0(&self, n: usize) -> &Lc0

0x40c..0x42c - Loop Counter 0 Registers

source

pub fn lc0_iter(&self) -> impl Iterator<Item = &Lc0>

Iterator for array of: 0x40c..0x42c - Loop Counter 0 Registers

source

pub fn lc1(&self, n: usize) -> &Lc1

0x410..0x430 - Loop Counter 1 Registers

source

pub fn lc1_iter(&self) -> impl Iterator<Item = &Lc1>

Iterator for array of: 0x410..0x430 - Loop Counter 1 Registers

source

pub fn dbgstatus(&self) -> &Dbgstatus

0xd00 - Debug Status Register

source

pub fn dbgcmd(&self) -> &Dbgcmd

0xd04 - Debug Command Register

source

pub fn dbginst0(&self) -> &Dbginst0

0xd08 - Debug Instruction-0 Register

source

pub fn dbginst1(&self) -> &Dbginst1

0xd0c - Debug Instruction-1 Register

source

pub fn cr0(&self) -> &Cr0

0xe00 - Configuration Register 0

source

pub fn cr1(&self) -> &Cr1

0xe04 - Configuration Register 1

source

pub fn cr2(&self) -> &Cr2

0xe08 - Configuration Register 2

source

pub fn cr3(&self) -> &Cr3

0xe0c - Configuration Register 3

source

pub fn cr4(&self) -> &Cr4

0xe10 - Configuration Register 4

source

pub fn crdn(&self) -> &Crdn

0xe14 - DMA Configuration Register

source

pub fn wd(&self) -> &Wd

0xe80 - DMA Watchdog Register

Trait Implementations§

source§

impl Debug for Dmac0

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Deref for Dmac0

§

type Target = RegisterBlock

The resulting type after dereferencing.
source§

fn deref(&self) -> &Self::Target

Dereferences the value.
source§

impl Send for Dmac0

Auto Trait Implementations§

§

impl Freeze for Dmac0

§

impl RefUnwindSafe for Dmac0

§

impl !Sync for Dmac0

§

impl Unpin for Dmac0

§

impl UnwindSafe for Dmac0

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.