![]() |
axicdma
Xilinx SDK Drivers API Documentation
|
This file demonstrates how to use the xaxicdma driver on the Xilinx AXI CDMA core (AXICDMA) to transfer packets in scatter gather transfer mode through interrupt.
This example assumes that the system has an interrupt controller.
To see the debug print, you need a Uart16550 or uartlite in your system, and please set "-DDEBUG" in your compiler options for the example, also comment out the "#undef DEBUG" in xdebug.h. You need to rebuild your software executable.
Make sure that MEMORY_BASE is defined properly as per the HW system.
MODIFICATION HISTORY:
Ver Who Date Changes
1.00a jz 07/27/10 First release 2.01a rkv 01/28/11 Changed function prototype of XAxiCdma_SgIntrExample to a function taking arguments interrupt instance,device instance,device id,device interrupt id. Added interrupt support for Cortex A9 2.01a srt 03/05/12 Modified interrupt support for Zynq. Added V7 DDR Base Address to fix CR 649405. Modified Flushing and Invalidation of Caches to fix CRs 648103, 648701. 2.02a srt 03/01/13 Updated DDR base address for IPI designs (CR 703656). 4.1 adk 01/07/16 Updated DDR base address for Ultrascale (CR 799532) and removed the defines for S6/V6. 4.3 ms 01/22/17 Modified xil_printf statement in main function to ensure that "Successfully ran" and "Failed" strings are available in all examples. This is a fix for CR-965028. ms 04/05/17 Modified Comment lines in functions to recognize it as documentation block for doxygen generation of examples.
Functions | |
int | XAxiCdma_SgIntrExample (XScuGic *IntcInstancePtr, XAxiCdma *InstancePtr, u16 DeviceId, u32 IntrId) |
The example to do the scatter gather transfer through interrupt. More... | |
int | main () |
The entry point for this example. More... | |
int main | ( | void | ) |
The entry point for this example.
It sets up uart16550 if one is available, invokes the example function, and reports the execution status.
None. |
int XAxiCdma_SgIntrExample | ( | XScuGic * | IntcInstancePtr, |
XAxiCdma * | InstancePtr, | ||
u16 | DeviceId, | ||
u32 | IntrId | ||
) |
The example to do the scatter gather transfer through interrupt.
IntcInstancePtr | is a pointer to the INTC instance |
InstancePtr | is a pointer to the XAxiCdma instance |
DeviceId | is the Device Id of the XAxiCdma instance |
IntrId | is the interrupt Id for the XAxiCdma instance in build |