void dma_clear_interrupt_flags(uint32_t dma, uint8_t channel, uint32_t interrupts) { /* Get offset to interrupt flag location in channel field */ uint32_t flags = (interrupts << DMA_FLAG_OFFSET(channel)); DMA_IFCR(dma) = flags; }
bool dma_get_interrupt_flag(uint32_t dma, uint8_t channel, uint32_t interrupt) { /* get offset to interrupt flag location in channel field. */ uint32_t flag = (interrupt << DMA_FLAG_OFFSET(channel)); return ((DMA_ISR(dma) & flag) > 0); }
void dma_clear_interrupt_flags(u32 dma, u8 channel, u32 interrupts) { /* Get offset to interrupt flag location in channel field */ u32 flags = (interrupts << DMA_FLAG_OFFSET(channel)); DMA_IFCR(dma) = flags; }