DMA_CHANNEL_DMA_STATUS (AXIPCIE_DMA) Register

Zynq UltraScale+ Devices Register Reference (UG1087)

Document ID
UG1087
Release Date
2024-03-13
Revision
1.10

DMA_CHANNEL_DMA_STATUS (AXIPCIE_DMA) Register Description

Register NameDMA_CHANNEL_DMA_STATUS
Offset Address0x000000007C
Absolute Address 0x00FD0F007C (AXIPCIE_DMA0)
0x00FD0F00FC (AXIPCIE_DMA1)
0x00FD0F017C (AXIPCIE_DMA2)
0x00FD0F01FC (AXIPCIE_DMA3)
Width32
TyperoRead-only
Reset Value0x00008000
DescriptionDMA Channel Status

DMA_CHANNEL_DMA_STATUS (AXIPCIE_DMA) Register Bit-Field Summary

Field NameBitsTypeReset ValueDescription
Reserved31:16roRead-only0x0
channel_present15roRead-only0x1DMA Channel Present. During initialization, the DMA Driver can read this register at all possible DMA Channel Register locations to determine how many DMA Channels are implemented.
Reserved14roRead-only0x0
channel_number13:4roRead-only0x0DMA Channel Number[9:0]. Unique DMA Channel Number assigned to this DMA Channel. The DMA Channel Number register is for informational purposes and is not needed for DMA operation. DMA Channel number is unique for each DMA Channel even for multi-function and SR-IOV applications.
Reserved 3:1roRead-only0x0
dma_running 0roRead-only0x0DMA Running. Prior to transitioning DMA Enable from 0 to 1 or modifying the contents of the DMA Channels Queue Management Registers, software must read DMA Running == 0 to verify that the prior DMA operation completed and that it is safe to re-initialize and re-start the DMA Channel. The DMA Channel Source and Destination Queues can be re-used for new DMA operations (by changing the Queue Scatter-Gather List contents) without having to disable the DMA Channel. In general software should setup the Source SGL, Destination SGL, Source DMA Completion Status, and Destination DMA Completion Status Queues once at driver initialization and keep the DMA Channel Enabled for the entire time the driver is loaded. When there is new work to do, the Driver makes the associated queue elements available to be executed by updatign the Queue LIMIT pointers.