diff --git a/include/libopencm3/stm32/f1/dma.h b/include/libopencm3/stm32/f1/dma.h index b08803f7..8a2edbad 100644 --- a/include/libopencm3/stm32/f1/dma.h +++ b/include/libopencm3/stm32/f1/dma.h @@ -369,6 +369,7 @@ void dma_disable_channel(u32 dma, u8 channel); void dma_set_peripheral_address(u32 dma, u8 channel, u32 address); void dma_set_memory_address(u32 dma, u8 channel, u32 address); void dma_set_number_of_data(u32 dma, u8 channel, u16 number); +void dma_clear_flag(u32 dma, u32 flag); END_DECLS diff --git a/lib/stm32/f1/dma.c b/lib/stm32/f1/dma.c index 04cb8a10..2bc89265 100644 --- a/lib/stm32/f1/dma.c +++ b/lib/stm32/f1/dma.c @@ -363,5 +363,10 @@ void dma_set_number_of_data(u32 dma, u8 channel, u16 number) { DMA_CNDTR(dma, channel) = number; } + +void dma_clear_flag(u32 dma, u32 flag) +{ + DMA_ISR(dma) &= ~flag; +} /**@}*/