|
EFR32 Blue Gecko 1 Software Documentation
efr32bg1-doc-5.1.2
|
DMADRV API implementation.
(C) Copyright 2014 Silicon Labs, http://www.silabs.com
This file is licensed under the Silabs License Agreement. See the file "Silabs_License_Agreement.txt" for details. Before using this software for any purpose, you must agree to the terms of that agreement.
Definition in file dmadrv.c.
#include <stdbool.h>#include <stddef.h>#include "em_device.h"#include "em_cmu.h"#include "em_core.h"#include "dmadrv.h"Go to the source code of this file.
Functions | |
| Ecode_t | DMADRV_AllocateChannel (unsigned int *channelId, void *capabilities) |
| Allocate (reserve) a DMA channel. More... | |
| Ecode_t | DMADRV_DeInit (void) |
| Deinitialize DMADRV. More... | |
| Ecode_t | DMADRV_FreeChannel (unsigned int channelId) |
| Free an allocate (reserved) DMA channel. More... | |
| Ecode_t | DMADRV_Init (void) |
| Initialize DMADRV. More... | |
| Ecode_t | DMADRV_LdmaStartTransfer (int channelId, LDMA_TransferCfg_t *transfer, LDMA_Descriptor_t *descriptor, DMADRV_Callback_t callback, void *cbUserParam) |
| Start a LDMA transfer. More... | |
| Ecode_t | DMADRV_MemoryPeripheral (unsigned int channelId, DMADRV_PeripheralSignal_t peripheralSignal, void *dst, void *src, bool srcInc, int len, DMADRV_DataSize_t size, DMADRV_Callback_t callback, void *cbUserParam) |
| Start a memory to peripheral DMA transfer. More... | |
| Ecode_t | DMADRV_MemoryPeripheralPingPong (unsigned int channelId, DMADRV_PeripheralSignal_t peripheralSignal, void *dst, void *src0, void *src1, bool srcInc, int len, DMADRV_DataSize_t size, DMADRV_Callback_t callback, void *cbUserParam) |
| Start a memory to peripheral ping-pong DMA transfer. More... | |
| Ecode_t | DMADRV_PauseTransfer (unsigned int channelId) |
| Pause an ongoing DMA transfer. More... | |
| Ecode_t | DMADRV_PeripheralMemory (unsigned int channelId, DMADRV_PeripheralSignal_t peripheralSignal, void *dst, void *src, bool dstInc, int len, DMADRV_DataSize_t size, DMADRV_Callback_t callback, void *cbUserParam) |
| Start a peripheral to memory DMA transfer. More... | |
| Ecode_t | DMADRV_PeripheralMemoryPingPong (unsigned int channelId, DMADRV_PeripheralSignal_t peripheralSignal, void *dst0, void *dst1, void *src, bool dstInc, int len, DMADRV_DataSize_t size, DMADRV_Callback_t callback, void *cbUserParam) |
| Start a peripheral to memory ping-pong DMA transfer. More... | |
| Ecode_t | DMADRV_ResumeTransfer (unsigned int channelId) |
| Resume an ongoing DMA transfer. More... | |
| Ecode_t | DMADRV_StopTransfer (unsigned int channelId) |
| Stop an ongoing DMA transfer. More... | |
| Ecode_t | DMADRV_TransferActive (unsigned int channelId, bool *active) |
| Check if a transfer is running. More... | |
| Ecode_t | DMADRV_TransferCompletePending (unsigned int channelId, bool *pending) |
| Check if a transfer complete is pending. More... | |
| Ecode_t | DMADRV_TransferDone (unsigned int channelId, bool *done) |
| Check if a transfer has completed. More... | |
| Ecode_t | DMADRV_TransferRemainingCount (unsigned int channelId, int *remaining) |
| Get number of items remaining in a transfer. More... | |