EFM32 Wonder Gecko Software Documentation  efm32wg-doc-4.2.1
em_dma.c File Reference

Direct memory access (DMA) module peripheral API. More...

#include "em_dma.h"
#include "em_cmu.h"
#include "em_assert.h"
#include "em_bus.h"

Go to the source code of this file.

Functions

void DMA_IRQHandler (void)
 Interrupt handler for DMA cycle completion handling. More...
 
void DMA_ActivateAuto (unsigned int channel, bool primary, void *dst, void *src, unsigned int nMinus1)
 Activate DMA auto-request cycle (used for memory-memory transfers). More...
 
void DMA_ActivateBasic (unsigned int channel, bool primary, bool useBurst, void *dst, void *src, unsigned int nMinus1)
 Activate DMA basic cycle (used for memory-peripheral transfers). More...
 
void DMA_ActivatePingPong (unsigned int channel, bool useBurst, void *primDst, void *primSrc, unsigned int primNMinus1, void *altDst, void *altSrc, unsigned int altNMinus1)
 Activate DMA ping-pong cycle (used for memory-peripheral transfers). More...
 
void DMA_ActivateScatterGather (unsigned int channel, bool useBurst, DMA_DESCRIPTOR_TypeDef *altDescr, unsigned int count)
 Activate DMA scatter-gather cycle (used for either memory-peripheral or memory-memory transfers). More...
 
void DMA_CfgChannel (unsigned int channel, DMA_CfgChannel_TypeDef *cfg)
 Configure a DMA channel. More...
 
void DMA_CfgDescr (unsigned int channel, bool primary, DMA_CfgDescr_TypeDef *cfg)
 Configure DMA descriptor for auto-request, basic or ping-pong DMA cycles. More...
 
void DMA_CfgLoop (unsigned int channel, DMA_CfgLoop_TypeDef *cfg)
 Configure DMA channel for Loop mode or 2D transfer. More...
 
void DMA_CfgRect (unsigned int channel, DMA_CfgRect_TypeDef *cfg)
 Configure DMA channel 2D transfer properties. More...
 
void DMA_CfgDescrScatterGather (DMA_DESCRIPTOR_TypeDef *descr, unsigned int indx, DMA_CfgDescrSGAlt_TypeDef *cfg)
 Configure an alternate DMA descriptor for use with scatter-gather DMA cycles. More...
 
void DMA_ChannelEnable (unsigned int channel, bool enable)
 Enable or disable a DMA channel. More...
 
bool DMA_ChannelEnabled (unsigned int channel)
 Check if DMA channel is enabled. More...
 
void DMA_Init (DMA_Init_TypeDef *init)
 Initializes DMA controller. More...
 
void DMA_RefreshPingPong (unsigned int channel, bool primary, bool useBurst, void *dst, void *src, unsigned int nMinus1, bool stop)
 Refresh a descriptor used in a DMA ping-pong cycle. More...
 
void DMA_Reset (void)
 Reset the DMA controller. More...
 

Detailed Description

Version
4.2.1

License

(C) Copyright 2015 Silicon Labs, http://www.silabs.com

Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions:

  1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software.
  2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
  3. This notice may not be removed or altered from any source distribution.

DISCLAIMER OF WARRANTY/LIMITATION OF REMEDIES: Silicon Labs has no obligation to support this Software. Silicon Labs is providing the Software "AS IS", with no express or implied warranties of any kind, including, but not limited to, any implied warranties of merchantability or fitness for any particular purpose or warranties against infringement of any proprietary rights of a third party.

Silicon Labs will not be liable for any consequential, incidental, or special damages, or any other relief, or for any claim by any third party, arising from your use of this Software.

Definition in file em_dma.c.