aboutsummaryrefslogtreecommitdiffstats
path: root/os/hal/ports/SAMA
diff options
context:
space:
mode:
authorisiora <none@example.com>2018-02-21 19:46:19 +0000
committerisiora <none@example.com>2018-02-21 19:46:19 +0000
commita1c7967a56eada9b84914f1be2155fd5238d829b (patch)
tree57ee5ba3b12c01b8d0381ae29017c51ade17a826 /os/hal/ports/SAMA
parent482d67200ab9bf0ff6f324b1ec74b7ab3cfbb518 (diff)
downloadChibiOS-a1c7967a56eada9b84914f1be2155fd5238d829b.tar.gz
ChibiOS-a1c7967a56eada9b84914f1be2155fd5238d829b.tar.bz2
ChibiOS-a1c7967a56eada9b84914f1be2155fd5238d829b.zip
Callback invoked on all enabled and pending interrupt sources.
git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@11529 35acf78f-673a-0410-8e92-d51de3d6d3f4
Diffstat (limited to 'os/hal/ports/SAMA')
-rw-r--r--os/hal/ports/SAMA/LLD/DMAv1/sama_xdmac.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/os/hal/ports/SAMA/LLD/DMAv1/sama_xdmac.c b/os/hal/ports/SAMA/LLD/DMAv1/sama_xdmac.c
index 97ca3cfb0..fda40a7ba 100644
--- a/os/hal/ports/SAMA/LLD/DMAv1/sama_xdmac.c
+++ b/os/hal/ports/SAMA/LLD/DMAv1/sama_xdmac.c
@@ -114,13 +114,12 @@ OSAL_IRQ_HANDLER(dmaHandler) {
gis &= ~(0x1 << chan);
/**
- * if channel interrupt is enabled and pending, and a callback exists,
+ * if a channel interrupt is enabled and pending, and a callback exists,
* execute it
*/
uint32_t cis = dmaGetChannelInt(channel) & dmaGetChannelIntMask(channel);
- if (cis & (XDMAC_CIS_BIS|XDMAC_CIS_LIS|XDMAC_CIS_DIS))
- if (channel->dma_func)
- channel->dma_func(channel->dma_param, cis);
+ if (cis && channel->dma_func)
+ channel->dma_func(channel->dma_param, cis);
}
aicAckInt();
OSAL_IRQ_EPILOGUE();