axicdma: xaxicdma_bdring.c File Reference

| axicdma Xilinx SDK Drivers API Documentation

- Overview
- APIs
- File List
- Examples

Functions
xaxicdma_bdring.c File Reference

## Functions
u32 | XAxiCdma_BdRingCntCalc (u32 Alignment, u32 Bytes, UINTPTR BdBuffAddr)
| This function calculates how many BDs can be built using given number of bytes of memory, according to alignment provided. More...
u32 | XAxiCdma_BdRingMemCalc (u32 Alignment, int NumBd)
| This function calculates how much memory is needed to build requested number of BDs. More...
void | XAxiCdma_BdSetCurBdPtr (XAxiCdma *InstancePtr, UINTPTR CurBdPtr)
| This function set the Current BD ptr of a BD. More...
XAxiCdma_Bd * | XAxiCdma_BdRingGetCurrBd (XAxiCdma *InstancePtr)
| This function grabs a copy of the current BD pointer from the hardware. More...
u32 | XAxiCdma_BdRingGetCnt (XAxiCdma *InstancePtr)
| This function gets the total number of BDs in the BD ring. More...
u32 | XAxiCdma_BdRingGetFreeCnt (XAxiCdma *InstancePtr)
| This function gets the number of free BDs. More...
void | XAxiCdma_BdRingSnapShotCurrBd (XAxiCdma *InstancePtr)
| This function grabs a copy of the current BD pointer from the hardware. More...
void | XAxiCdma_BdSetTailBdPtr (XAxiCdma *InstancePtr, UINTPTR TailBdPtr)
| This function set the Tail BD ptr of a BD. More...
XAxiCdma_Bd * | XAxiCdma_BdRingNext (XAxiCdma *InstancePtr, XAxiCdma_Bd *BdPtr)
| This function gets the next BD of the current BD on the BD ring. More...
XAxiCdma_Bd * | XAxiCdma_BdRingPrev (XAxiCdma *InstancePtr, XAxiCdma_Bd *BdPtr)
| This function gets the previous BD of the current BD on the BD ring. More...
LONG | XAxiCdma_BdRingCreate (XAxiCdma *InstancePtr, UINTPTR PhysAddr, UINTPTR VirtAddr, u32 Alignment, int BdCount)
| This function creates the BD ring for the driver instance. More...
LONG | XAxiCdma_BdRingClone (XAxiCdma *InstancePtr, XAxiCdma_Bd *TemplateBdPtr)
| This function clones all BDs in the BD ring to be the same as the given BD. More...
LONG | XAxiCdma_BdRingAlloc (XAxiCdma *InstancePtr, int NumBd, XAxiCdma_Bd **BdSetPtr)
| This function requests number of BDs from the BD ring. More...
LONG | XAxiCdma_BdRingUnAlloc (XAxiCdma *InstancePtr, int NumBd, XAxiCdma_Bd *BdSetPtr)
| This function tries to free the number of BDs back to the ring. More...
LONG | XAxiCdma_BdRingToHw (XAxiCdma *InstancePtr, int NumBd, XAxiCdma_Bd *BdSetPtr, XAxiCdma_CallBackFn CallBackFn, void *CallBackRef)
| This function tries to enqueue the number of BDs to the hardware. More...
u32 | XAxiCdma_BdRingFromHw (XAxiCdma *InstancePtr, int BdLimit, XAxiCdma_Bd **BdSetPtr)
| This function tries to retrieve completed BDs from the hardware. More...
u32 | XAxiCdma_BdRingFree (XAxiCdma *InstancePtr, int NumBd, XAxiCdma_Bd *BdSetPtr)
| This function returns the BDs back to the free pool of the BD ring. More...