|  | axidma
    Vitis Drivers API Documentation | 
Container structure for descriptor storage control. More...
| Data Fields | |
| UINTPTR | ChanBase | 
| physical base address  More... | |
| int | IsRxChannel | 
| Is this a receive channel.  More... | |
| volatile int | RunState | 
| Whether channel is running.  More... | |
| int | HasStsCntrlStrm | 
| Whether has stscntrl stream.  More... | |
| UINTPTR | FirstBdPhysAddr | 
| Physical address of 1st BD in list.  More... | |
| UINTPTR | FirstBdAddr | 
| Virtual address of 1st BD in list.  More... | |
| UINTPTR | LastBdAddr | 
| Virtual address of last BD in the list.  More... | |
| u32 | Length | 
| Total size of ring in bytes.  More... | |
| UINTPTR | Separation | 
| Number of bytes between the starting  address of adjacent BDs  More... | |
| XAxiDma_Bd * | FreeHead | 
| First BD in the free group.  More... | |
| XAxiDma_Bd * | PreHead | 
| First BD in the pre-work group.  More... | |
| XAxiDma_Bd * | HwHead | 
| First BD in the work group.  More... | |
| XAxiDma_Bd * | HwTail | 
| Last BD in the work group.  More... | |
| XAxiDma_Bd * | PostHead | 
| First BD in the post-work group.  More... | |
| XAxiDma_Bd * | BdaRestart | 
| BD to load when channel is started.  More... | |
| XAxiDma_Bd * | CyclicBd | 
| Useful for Cyclic DMA operations.  More... | |
| int | FreeCnt | 
| Number of allocatable BDs in free group.  More... | |
| int | PreCnt | 
| Number of BDs in pre-work group.  More... | |
| int | HwCnt | 
| Number of BDs in work group.  More... | |
| int | PostCnt | 
| Number of BDs in post-work group.  More... | |
| int | AllCnt | 
| Total Number of BDs for channel.  More... | |
| int | RingIndex | 
| Ring Index.  More... | |
| int | Cyclic | 
| Check for cyclic DMA Mode.  More... | |
Container structure for descriptor storage control.
If address translation is enabled, then all addresses and pointers excluding FirstBdPhysAddr are expressed in terms of the virtual address.
| int XAxiDma_BdRing::AllCnt | 
Total Number of BDs for channel.
Referenced by XAxiDma_BdRingCheck(), XAxiDma_BdRingClone(), XAxiDma_BdRingCreate(), and XAxiDma_UpdateBdRingCDesc().
| XAxiDma_Bd* XAxiDma_BdRing::BdaRestart | 
BD to load when channel is started.
Referenced by XAxiDma_BdRingCreate(), and XAxiDma_UpdateBdRingCDesc().
| UINTPTR XAxiDma_BdRing::ChanBase | 
physical base address
Referenced by XAxiDma_BdRingDumpRegs(), XAxiDma_BdRingGetCoalesce(), XAxiDma_BdRingSetCoalesce(), XAxiDma_BdRingToHw(), XAxiDma_CfgInitialize(), XAxiDma_Pause(), XAxiDma_ResetIsDone(), XAxiDma_SimpleTransfer(), XAxiDma_StartBdRingHw(), and XAxiDma_UpdateBdRingCDesc().
| int XAxiDma_BdRing::Cyclic | 
Check for cyclic DMA Mode.
Referenced by XAxiDma_BdRingCreate(), XAxiDma_BdRingFromHw(), XAxiDma_BdRingToHw(), and XAxiDma_StartBdRingHw().
| XAxiDma_Bd* XAxiDma_BdRing::CyclicBd | 
Useful for Cyclic DMA operations.
Referenced by XAxiDma_BdRingCreate(), XAxiDma_BdRingToHw(), and XAxiDma_StartBdRingHw().
| UINTPTR XAxiDma_BdRing::FirstBdAddr | 
Virtual address of 1st BD in list.
Referenced by XAxiDma_BdRingCheck(), XAxiDma_BdRingClone(), and XAxiDma_BdRingCreate().
| UINTPTR XAxiDma_BdRing::FirstBdPhysAddr | 
Physical address of 1st BD in list.
Referenced by XAxiDma_BdRingCheck(), and XAxiDma_BdRingCreate().
| int XAxiDma_BdRing::FreeCnt | 
Number of allocatable BDs in free group.
Referenced by XAxiDma_BdRingAlloc(), XAxiDma_BdRingCheck(), XAxiDma_BdRingClone(), XAxiDma_BdRingCreate(), XAxiDma_BdRingFree(), and XAxiDma_BdRingUnAlloc().
| XAxiDma_Bd* XAxiDma_BdRing::FreeHead | 
First BD in the free group.
Referenced by XAxiDma_BdRingAlloc(), XAxiDma_BdRingCheck(), XAxiDma_BdRingCreate(), and XAxiDma_BdRingUnAlloc().
| int XAxiDma_BdRing::HasStsCntrlStrm | 
Whether has stscntrl stream.
Referenced by XAxiDma_BdRingCreate(), and XAxiDma_CfgInitialize().
| int XAxiDma_BdRing::HwCnt | 
Number of BDs in work group.
Referenced by XAxiDma_BdRingCheck(), XAxiDma_BdRingCreate(), XAxiDma_BdRingFromHw(), XAxiDma_BdRingToHw(), and XAxiDma_StartBdRingHw().
| XAxiDma_Bd* XAxiDma_BdRing::HwHead | 
First BD in the work group.
Referenced by XAxiDma_BdRingCheck(), XAxiDma_BdRingCreate(), and XAxiDma_BdRingFromHw().
| XAxiDma_Bd* XAxiDma_BdRing::HwTail | 
Last BD in the work group.
Referenced by XAxiDma_BdRingCheck(), XAxiDma_BdRingCreate(), XAxiDma_BdRingFromHw(), XAxiDma_BdRingToHw(), and XAxiDma_StartBdRingHw().
| int XAxiDma_BdRing::IsRxChannel | 
Is this a receive channel.
Referenced by XAxiDma_BdRingFromHw(), XAxiDma_BdRingToHw(), XAxiDma_CfgInitialize(), XAxiDma_StartBdRingHw(), and XAxiDma_UpdateBdRingCDesc().
| UINTPTR XAxiDma_BdRing::LastBdAddr | 
Virtual address of last BD in the list.
Referenced by XAxiDma_BdRingCheck(), and XAxiDma_BdRingCreate().
| u32 XAxiDma_BdRing::Length | 
Total size of ring in bytes.
Referenced by XAxiDma_BdRingCreate().
| int XAxiDma_BdRing::PostCnt | 
Number of BDs in post-work group.
Referenced by XAxiDma_BdRingCheck(), XAxiDma_BdRingCreate(), XAxiDma_BdRingFree(), and XAxiDma_BdRingFromHw().
| XAxiDma_Bd* XAxiDma_BdRing::PostHead | 
First BD in the post-work group.
Referenced by XAxiDma_BdRingCheck(), XAxiDma_BdRingCreate(), and XAxiDma_BdRingFree().
| int XAxiDma_BdRing::PreCnt | 
Number of BDs in pre-work group.
Referenced by XAxiDma_BdRingAlloc(), XAxiDma_BdRingCheck(), XAxiDma_BdRingCreate(), XAxiDma_BdRingToHw(), and XAxiDma_BdRingUnAlloc().
| XAxiDma_Bd* XAxiDma_BdRing::PreHead | 
First BD in the pre-work group.
Referenced by XAxiDma_BdRingCheck(), XAxiDma_BdRingCreate(), and XAxiDma_BdRingToHw().
| int XAxiDma_BdRing::RingIndex | 
Ring Index.
Referenced by XAxiDma_BdRingDumpRegs(), XAxiDma_BdRingToHw(), XAxiDma_CfgInitialize(), XAxiDma_StartBdRingHw(), and XAxiDma_UpdateBdRingCDesc().
| volatile int XAxiDma_BdRing::RunState | 
Whether channel is running.
Referenced by XAxiDma_BdRingCheck(), XAxiDma_BdRingClone(), XAxiDma_BdRingCreate(), XAxiDma_BdRingToHw(), XAxiDma_CfgInitialize(), XAxiDma_Pause(), XAxiDma_Reset(), XAxiDma_Resume(), XAxiDma_StartBdRingHw(), and XAxiDma_UpdateBdRingCDesc().
| UINTPTR XAxiDma_BdRing::Separation | 
Number of bytes between the starting
address of adjacent BDs
Referenced by XAxiDma_BdRingCheck(), XAxiDma_BdRingClone(), and XAxiDma_BdRingCreate().