/* param base The LPI2C peripheral base address. param handle Pointer to the LPI2C master driver handle. param rxDmaHandle Handle for the eDMA receive channel. Created by the user prior to calling this function. param txDmaHandle Handle for the eDMA transmit channel. Created by the user prior to calling this function. param callback User provided pointer to the asynchronous callback function. param userData User provided pointer to the application callback data.  */
void LPI2C_MasterCreateEDMAHandle(LPI2C_Type *base, lpi2c_master_edma_handle_t *handle, edma_handle_t *rxDmaHandle, edma_handle_t *txDmaHandle, lpi2c_master_edma_transfer_callback_t callback, void *userData)
/* param base The LPI2C peripheral base address. param handle Pointer to the LPI2C master driver handle. param rxDmaHandle Handle for the eDMA receive channel. Created by the user prior to calling this function. param txDmaHandle Handle for the eDMA transmit channel. Created by the user prior to calling this function. param callback User provided pointer to the asynchronous callback function. param userData User provided pointer to the application callback data.  */
void LPI2C_MasterCreateEDMAHandle(LPI2C_Type *base, lpi2c_master_edma_handle_t *handle, edma_handle_t *rxDmaHandle, edma_handle_t *txDmaHandle, lpi2c_master_edma_transfer_callback_t callback, void *userData)
{
    assert(handle);
    assert(rxDmaHandle);
    assert(txDmaHandle);
    memset(handle, 0, sizeof(*handle));
    handle->base               = base;
    handle->completionCallback = callback;
    handle->userData           = userData;
    handle->rx                 = rxDmaHandle;
    handle->tx                 = FSL_FEATURE_LPI2C_HAS_SEPARATE_DMA_RX_TX_REQn(base) ? txDmaHandle : rxDmaHandle;
    EDMA_SetCallback(handle->rx, LPI2C_MasterEDMACallback, handle);
    if (FSL_FEATURE_LPI2C_HAS_SEPARATE_DMA_RX_TX_REQn(base))
    {
        EDMA_SetCallback(handle->tx, LPI2C_MasterEDMACallback, handle);
    }
}