zdma
Vitis Drivers API Documentation
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
xzdma_simple_example.c File Reference

Overview

This file contains the example using XZDma driver to do simple data transfer in Normal mode on ZDMA device for 1MB data transfer.

MODIFICATION HISTORY:
Ver   Who     Date     Changes


1.0 vns 2/27/15 First release vns 10/13/15 Declared static array rather than hard code memory. ms 04/05/17 Modified comment lines notation in functions to avoid unnecessary description to get displayed while generating doxygen. 1.3 mus 08/14/17 Do not perform cache operations if CCI is enabled 1.4 adk 11/02/17 Updated example to fix compilation errors for IAR compiler. 1.5 adk 11/22/17 Added peripheral test app support. 12/11/17 Fixed peripheral test app generation issues when dma buffers are configured on OCM memory(CR#990806). 18/01/18 Remove unnecessary column in XIntc_Connect() API. 01/02/18 Added support for error handling. 1.7 adk 21/03/19 Fix alignment pragmas in the example for IAR compiler. 19/04/19 Rename the dma buffers to avoid peripheral test compilation errors with armclang compiler. 1.12 sk 02/16/21 Add the documentation for XZDma_SimpleExample() function parameters to fix the doxygen warning. 1.13 asa 08/24/21 Make changes to add a missing data invalidation operation just before the destination buffer data is being read. Changes were done for other cleanups and also to ensure that the DMA is reset before the program exits. 1.16 sa 09/29/22 Fix infinite loops in the example.

#include "xzdma.h"
#include "xparameters.h"
#include "xinterrupt_wrap.h"
#include "xil_cache.h"
#include "xil_util.h"
#include "xplatform_info.h"

Macros

#define SIZE   1000000
 Size of the data to be transferred. More...
 
#define TESTVALUE   0x1230
 For writing into source buffer. More...
 

Functions

int XZDma_SimpleExample (XZDma *ZdmaInstPtr, UINTPTR BaseAddress)
 This function does a test of the data transfer in simple mode of normal mode on the ZDMA driver. More...
 
int main (void)
 Main function to call the example. More...
 

Variables

XZDma ZDma
 Instance of the ZDMA Device. More...
 
u8 ZDmaDstBuf [SIZE]
 Destination buffer. More...
 
u8 ZDmaSrcBuf [SIZE]
 Source buffer. More...
 

Macro Definition Documentation

#define SIZE   1000000

Size of the data to be transferred.

Referenced by XZDma_SimpleExample().

#define TESTVALUE   0x1230

For writing into source buffer.

Referenced by XZDma_SimpleExample().

Function Documentation

int main ( void  )

Main function to call the example.

Returns
  • XST_SUCCESS if successful.
  • XST_FAILURE if failed.
Note
None.

References XZDma_SimpleExample().

Variable Documentation

XZDma ZDma

Instance of the ZDMA Device.

u8 ZDmaDstBuf[SIZE]

Destination buffer.

Referenced by XZDma_SimpleExample().

u8 ZDmaSrcBuf[SIZE]

Source buffer.

Referenced by XZDma_SimpleExample().