#[repr(C)]pub struct TwoDItem {
pub item: Item,
pub tr3: ChTr3,
pub br2: ChBr2,
pub llr: ChLlr,
}Expand description
A linked-list item for 2D GPDMA transfers (block repeat with address offsets).
This is an 8-word (32 byte) descriptor that includes TR3 and BR2 registers for per-burst and per-block-repeat address stepping. Only usable on GPDMA channels that support 2D addressing.
Fields§
§item: ItemCommon item fields (TR1, TR2, BR1, SAR, DAR).
tr3: ChTr3Transfer register 3 (per-burst address offsets).
br2: ChBr2Block register 2 (per-block-repeat address offsets).
llr: ChLlrLinked-list address register.
Trait Implementations§
Source§impl LinkedListItem for TwoDItem
impl LinkedListItem for TwoDItem
Source§type Config = TwoDConfig
type Config = TwoDConfig
Per-item configuration passed at construction time.
Source§unsafe fn new_read<MW: Word, PW: Word>(
request: Request,
peri_addr: *mut PW,
buf: &mut [MW],
config: Self::Config,
) -> Self
unsafe fn new_read<MW: Word, PW: Word>( request: Request, peri_addr: *mut PW, buf: &mut [MW], config: Self::Config, ) -> Self
Create a new read DMA transfer item (peripheral to memory). Read more
Source§unsafe fn new_write<MW: Word, PW: Word>(
request: Request,
buf: &[MW],
peri_addr: *mut PW,
config: Self::Config,
) -> Self
unsafe fn new_write<MW: Word, PW: Word>( request: Request, buf: &[MW], peri_addr: *mut PW, config: Self::Config, ) -> Self
Create a new write DMA transfer item (memory to peripheral). Read more
Source§fn transfer_count(&self) -> usize
fn transfer_count(&self) -> usize
The item’s transfer count in number of destination words.
impl Copy for TwoDItem
Auto Trait Implementations§
impl Freeze for TwoDItem
impl RefUnwindSafe for TwoDItem
impl Send for TwoDItem
impl Sync for TwoDItem
impl Unpin for TwoDItem
impl UnwindSafe for TwoDItem
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