Beispiel #1
0
void edma_init(void)
{
    CLOCK_SYS_EnableDmaClock(0);
    EDMA_HAL_Init(DMA_BASE);
    CLOCK_SYS_EnableDmamuxClock(0);
    DMAMUX_HAL_Init(DMAMUX_BASE);
}
Beispiel #2
0
/*FUNCTION**********************************************************************
 *
 * Function Name : DMA_DRV_Init
 * Description   : Initialize DMA.
 *
 *END**************************************************************************/
dma_status_t DMA_DRV_Init(dma_state_t *state)
{
    uint8_t i;
    g_dma = state;
    memset(g_dma, 0, sizeof(dma_state_t));
#if (USE_RTOS)
    OSA_MutexCreate(&state->lock);
#endif
    /* Enable DMA clock. */
    for (i = 0; i < DMA_INSTANCE_COUNT; i ++)
    {
        CLOCK_SYS_EnableDmaClock(i);
    }

    /* Enable DMAMUX clock and init. */
    for (i = 0; i < DMAMUX_INSTANCE_COUNT; i++)
    {
        CLOCK_SYS_EnableDmamuxClock(i);
        DMAMUX_HAL_Init(g_dmamuxBase[i]);
    }

    return kStatus_DMA_Success;
}