summaryrefslogtreecommitdiff
path: root/bsp
diff options
context:
space:
mode:
authorxx <xx>2018-03-28 12:27:04 +0800
committerxx <xx>2018-03-28 12:27:04 +0800
commit5e477ae0acc793b492ac4cf32cecc9403bfb0d5d (patch)
treea5b0e1d5504d48b9c9da27fe7651e2f19499d729 /bsp
parentfa09a700c1358da269b73900ab4f13d0b82a16a2 (diff)
[imx-rt]在回调函数执行后才清除本次传输信息
Diffstat (limited to 'bsp')
-rw-r--r--bsp/imxrt1052-evk/Libraries/drivers/fsl_sai_edma.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/bsp/imxrt1052-evk/Libraries/drivers/fsl_sai_edma.c b/bsp/imxrt1052-evk/Libraries/drivers/fsl_sai_edma.c
index 6f4dda6998..c48a5aacd1 100644
--- a/bsp/imxrt1052-evk/Libraries/drivers/fsl_sai_edma.c
+++ b/bsp/imxrt1052-evk/Libraries/drivers/fsl_sai_edma.c
@@ -91,12 +91,12 @@ static void SAI_TxEDMACallback(edma_handle_t *handle, void *userData, bool done,
sai_edma_handle_t *saiHandle = privHandle->handle;
/* If finished a blcok, call the callback function */
- memset(&saiHandle->saiQueue[saiHandle->queueDriver], 0, sizeof(sai_transfer_t));
- saiHandle->queueDriver = (saiHandle->queueDriver + 1) % SAI_XFER_QUEUE_SIZE;
if (saiHandle->callback)
{
(saiHandle->callback)(privHandle->base, saiHandle, kStatus_SAI_TxIdle, saiHandle->userData);
- }
+ }
+ memset(&saiHandle->saiQueue[saiHandle->queueDriver], 0, sizeof(sai_transfer_t));
+ saiHandle->queueDriver = (saiHandle->queueDriver + 1) % SAI_XFER_QUEUE_SIZE;
/* If all data finished, just stop the transfer */
if (saiHandle->saiQueue[saiHandle->queueDriver].data == NULL)