MODIFICATION HISTORY:
Ver Who Date Changes ----- ---- -------- ------------------------------------------------------- 1.00a jz 05/18/10 First release 2.00a jz 08/10/10 Second release, added in xaxidma_g.c, xaxidma_sinit.c, updated tcl file, added xaxidma_porting_guide.h
Overview
The API for xaxidma driver is similar to xlldma driver. The prefix for the API functions and structures is XAxiDma_ for the xaxidma driver.
Due to hardware feature changes, signatures of some API functions are a little bit different from the xlldma API functions.
We present API functions:
Note that data structures have different prefix of XAxiDma_. Those API functions, that have data structures with prefix change, are considered as prefix change.
API Functions That Only Have Prefix Changes
xlldma driver | xaxidma driver ----------------------------------------------------------------------- XLlDma_Reset(...) | XAxiDma_Reset(...) XLlDma_BdRingSnapShotCurrBd(...)| XAxiDma_BdRingSnapShotCurrBd(...) XLlDma_BdRingNext(...) | XAxiDma_BdRingNext(...) XLlDma_BdRingPrev(...) | XAxiDma_BdRingPrev(...) XLlDma_BdRingGetSr(...) | XAxiDma_BdRingGetSr(...) XLlDma_BdRingBusy(...) | XAxiDma_BdRingBusy(...) XLlDma_BdRingIntEnable(...) | XAxiDma_BdRingIntEnable(...) XLlDma_BdRingIntDisable(...) | XAxiDma_BdRingIntDisable(...) XLlDma_BdRingIntGetEnabled(...) | XAxiDma_BdRingIntGetEnabled(...) XLlDma_BdRingGetIrq(...) | XAxiDma_BdRingGetIrq(...) XLlDma_BdRingAckIrq(...) | XAxiDma_BdRingAckIrq(...) XLlDma_BdRingCreate(...) | XAxiDma_BdRingCreate(...) XLlDma_BdRingClone(...) | XAxiDma_BdRingClone(...) XLlDma_BdRingAlloc(...) | XAxiDma_BdRingAlloc(...) XLlDma_BdRingUnAlloc(...) | XAxiDma_BdRingUnAlloc(...) XLlDma_BdRingToHw(...) | XAxiDma_BdRingToHw(...) XLlDma_BdRingFromHw(...) | XAxiDma_BdRingFromHw(...) XLlDma_BdRingFree(...) | XAxiDma_BdRingFree(...) XLlDma_BdRingStart(...) | XAxiDma_BdRingStart(...) XLlDma_BdRingCheck(...) | XAxiDma_BdRingCheck(...) XLlDma_BdRingSetCoalesce(...) | XAxiDma_BdRingSetCoalesce(...) XLlDma_BdRingGetCoalesce(...) | XAxiDma_BdRingGetCoalesce(...) XLlDma_BdRead(...) | XAxiDma_BdRead(...) XLlDma_BdWrite(...) | XAxiDma_BdWrite(...) XLlDma_BdClear(...) | XAxiDma_BdClear(...) XLlDma_BdSetId(...) | XAxiDma_BdSetId(...) XLlDma_BdGetId(...) | XAxiDma_BdGetId(...) XLlDma_BdGetLength(...) | XAxiDma_BdGetLength(...) XLlDma_BdGetBufAddr(...) | XAxiDma_BdGetBufAddr(...) *
API Functions That Have Different Return Type
Due to possible hardware failures, The caller should check the return value of the following functions.
xlldma driver | xaxidma driver ----------------------------------------------------------------------- void XLlDma_Pause(...) | int XAxiDma_Pause(...) void XLlDma_Resume(...) | int XAxiDma_Resume(...)
The following functions have return type changed:
xlldma driver | xaxidma driver ----------------------------------------------------------------------- XLlDma_BdRing XLlDma_GetRxRing(...)| XAxiDma_BdRing * XAxiDma_GetRxRing(...) XLlDma_BdRing XLlDma_GetTxRing(...)| XAxiDma_BdRing * XAxiDma_GetTxRing(...) u32 XLlDma_BdRingMemCalc(...) | int XAxiDma_BdRingMemCalc(...) u32 XLlDma_BdRingCntCalc(...) | int XAxiDma_BdRingCntCalc(...) u32 XLlDma_BdRingGetCnt(...) | int XAxiDma_BdRingGetCnt(...) u32 XLlDma_BdRingGetFreeCnt(...) | int XAxiDma_BdRingGetFreeCnt(...) void XLlDma_BdSetLength(...) | int XAxiDma_BdSetLength(...) void XLlDma_BdSetBufAddr(...) | int XAxiDma_BdSetBufAddr(...) *
API Functions That Are New API Functions
Now that the AXI DMA core is a standalone core, some new API are intrduced. Some other functions are added due to hardware interface change, so to replace old API functions.
API Functions That Have Been Removed
Please see individual function comments for how to replace the removed API function with new API functions.
Copyright © 1995-2010 Xilinx, Inc. All rights reserved.