/* LPUART DMA receive finished callback function. 
This function is called when LPUART DMA receive finished. It disables the LPUART RX DMA request and sends kStatus_LPUART_RxIdle to LPUART callback. */
static void LPUART_TransferReceiveDMACallback(dma_handle_t *handle, void *param)
/* LPUART DMA receive finished callback function. 
This function is called when LPUART DMA receive finished. It disables the LPUART RX DMA request and sends kStatus_LPUART_RxIdle to LPUART callback. */
static void LPUART_TransferReceiveDMACallback(dma_handle_t *handle, void *param)
{
    lpuart_dma_private_handle_t *lpuartPrivateHandle = (lpuart_dma_private_handle_t *)param;
    LPUART_EnableRxDMA(lpuartPrivateHandle->base, false);
    DMA_DisableInterrupts(lpuartPrivateHandle->handle->rxDmaHandle->base,
                          lpuartPrivateHandle->handle->rxDmaHandle->channel);
    lpuartPrivateHandle->handle->rxState = kLPUART_RxIdle;
    if (lpuartPrivateHandle->handle->callback)
    {
        lpuartPrivateHandle->handle->callback(lpuartPrivateHandle->base, lpuartPrivateHandle->handle,
                                              kStatus_LPUART_RxIdle, lpuartPrivateHandle->handle->userData);
    }
}