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
impl Copy for Tcem
impl Eq for Tcem
impl StructuralPartialEq for Tcem
Auto Trait Implementations§
impl Freeze for Tcem
impl RefUnwindSafe for Tcem
impl Send for Tcem
impl Sync for Tcem
impl Unpin for Tcem
impl UnwindSafe for Tcem
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
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)