#[non_exhaustive]pub struct TransferOptions {
pub priority: Priority,
pub half_transfer_ir: bool,
pub complete_transfer_ir: bool,
pub secure: bool,
pub burst_length: Burst,
pub request_mode: RequestMode,
pub trigger: Option<TriggerConfig>,
}Expand description
GPDMA transfer options.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.priority: PriorityRequest priority level.
half_transfer_ir: boolEnable half transfer interrupt.
complete_transfer_ir: boolEnable transfer complete interrupt.
secure: boolIssue source and destination AXI/AHB transactions with the secure
attribute set (TR1.SSEC = TR1.DSEC = 1). Required when the channel
is configured secure (SECCFGR.SEC[n]=1) and the slave is behind
RISAF — without this the channel hits ULEF (user setting error)
after partial progress. Default false.
burst_length: BurstSource/destination burst length, in beats. Default _1Beats. Some
peripherals only assert their DMA request line for bursts above a
threshold (notably the JPEG codec on N6), and some require multi-beat
bursts to handshake correctly under BREQ=Burst (e.g. CRYP wants
4-beat bursts, matching one AES block per peripheral request).
request_mode: RequestModeSelect whether peripheral handshaking is done at burst or block level.
trigger: Option<TriggerConfig>Optional trigger-gated transfer configuration.
Trait Implementations§
Source§impl Clone for TransferOptions
impl Clone for TransferOptions
Source§fn clone(&self) -> TransferOptions
fn clone(&self) -> TransferOptions
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more