Enum stm32_metapac::gpdma::vals::Tcem
#[repr(u8)]pub enum Tcem {
EACHBLOCK = 0,
EACH2DBLOCK = 1,
EACHLINKEDLISTITEM = 2,
LASTLINKEDLISTITEM = 3,
}
Variants§
EACHBLOCK = 0
at block level (when CH[x].BR1.BNDT[15:0] = 0): the complete (and the half) transfer event is generated at the (respectively half of the) end of a block.
EACH2DBLOCK = 1
channel x = 0 to 11, same as 00; channel x=12 to 15, at 2D/repeated block level (when CH[x].BR1.BRC[10:0] = 0 and CH[x].BR1.BNDT[15:0] = 0), the complete (and the half) transfer event is generated at the end (respectively half of the end) of the 2D/repeated block.
EACHLINKEDLISTITEM = 2
at LLI level: the complete transfer event is generated at the end of the LLI transfer, including the update of the LLI if any. The half transfer event is generated at the half of the LLI data transfer (the LLI data transfer being a block transfer or a 2D/repeated block transfer for channel x = 12 to 15), if any data transfer.
LASTLINKEDLISTITEM = 3
at channel level: the complete transfer event is generated at the end of the last LLI transfer. The half transfer event is generated at the half of the data transfer of the last LLI. The last LLI updates the link address CH[x].LLR.LA[15:2] to zero and clears all the CH[x].LLR update bits (UT1, UT2, UB1, USA, UDA and ULL, plus UT3 and UB2 if present). If the channel transfer is continuous/infinite, no event is generated.
Implementations§
Trait Implementations§
§impl Ord for Tcem
impl Ord for Tcem
§impl PartialOrd for Tcem
impl PartialOrd for Tcem
§fn partial_cmp(&self, other: &Tcem) -> Option<Ordering>
fn partial_cmp(&self, other: &Tcem) -> Option<Ordering>
1.0.0 · source§fn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
self
and other
) and is used by the <=
operator. Read more