aboutsummaryrefslogtreecommitdiff
path: root/nuttx
diff options
context:
space:
mode:
authorpx4dev <px4@purgatory.org>2013-01-10 01:57:16 -0800
committerpx4dev <px4@purgatory.org>2013-01-13 19:05:00 -0800
commite2f7a468121cb41131b453821dcc79d4de8d8e28 (patch)
tree077956b04499e638fa04898bbe30556e69d45f28 /nuttx
parent97136375e393d71000a8f5e7c4c5a1b1bcb0f464 (diff)
downloadpx4-firmware-e2f7a468121cb41131b453821dcc79d4de8d8e28.tar.gz
px4-firmware-e2f7a468121cb41131b453821dcc79d4de8d8e28.tar.bz2
px4-firmware-e2f7a468121cb41131b453821dcc79d4de8d8e28.zip
Clear the interrupting condition when we take the DMA interrupt.
Diffstat (limited to 'nuttx')
-rw-r--r--nuttx/arch/arm/src/stm32/stm32f10xxx_dma.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/nuttx/arch/arm/src/stm32/stm32f10xxx_dma.c b/nuttx/arch/arm/src/stm32/stm32f10xxx_dma.c
index 4d5371e7a..a02ceb230 100644
--- a/nuttx/arch/arm/src/stm32/stm32f10xxx_dma.c
+++ b/nuttx/arch/arm/src/stm32/stm32f10xxx_dma.c
@@ -308,6 +308,10 @@ static int stm32_dmainterrupt(int irq, void *context)
isr = dmabase_getreg(dmach, STM32_DMA_ISR_OFFSET) & DMA_ISR_CHAN_MASK(dmach->chan);
+ /* Clear the interrupts we are handling */
+
+ dmabase_putreg(dmach, STM32_DMA_IFCR_OFFSET, isr);
+
/* Invoke the callback */
if (dmach->callback)