Alt_avalon_sgdma_check_descriptor_status(), Alt_avalon_sgdma_check_descriptor_status() -22 – Altera Embedded Peripherals IP User Manual
Page 213

Parameters:
*desc—a pointer to the descriptor being constructed.
*next—a pointer to the “next” descriptor. This does not need to be a complete or
functional descriptor, but must be properly allocated.
*read_addr—the first read address for the SG-DMA transfer.
length—the number of bytes for the transfer.
read_fixed—if non-zero, the SG-DMA reads from a fixed address.
generate_sop—if non-zero, the SG-DMA generates a SOP on the Avalon-ST
interface when commencing the transfer.
generate_eop—if non-zero, the SG-DMA generates an EOP on the Avalon-ST
interface when completing the transfer.
atlantic_channel—an 8-bit Avalon-ST channel number. Channels are currently
not supported. Set this parameter to 0.
Returns:
void
Description:
This function constructs a single SG-DMA descriptor in the memory specified in
alt_avalon_sgdma-descriptor
*desc for an Avalon-MM to Avalon-ST
transfer. The destination (write) data for the transfer goes to the Avalon-ST
interface connected to the SG-DMA controller's streaming write port. The
function sets the OWNED_BY_HW bit in the descriptor's control field, marking
the completed descriptor as ready to run. The descriptor is processed when the
SG-DMA controller receives the descriptor and the RUN bit is 1.
The next field of the descriptor being constructed is set to the address in *next.
The OWNED_BY_HW bit of the descriptor at *next is explicitly cleared. Once
the SG-DMA completes processing of the *desc, it does not process the
descriptor at *next until its OWNED_BY_HW bit is set. To create a descriptor
chain, you can repeatedly call this function using the previous call's *next pointer
in the *desc parameter.
You are responsible for properly allocating memory for the creation of both the
descriptor under construction as well as the next descriptor in the chain.
Descriptors must be in a memory device mastered by the SG-DMA controller’s
chain read and chain write Avalon master ports. Care must be taken to ensure
that both *desc and *next point to areas of memory mastered by the controller.
alt_avalon_sgdma_check_descriptor_status()
Prototype:
int alt_avalon_sgdma_check_descriptor_status(alt_sgdma_descriptor *desc)
Thread-safe:
Yes.
Available from
ISR:
Yes.
Include:
<altera_avalon_sgdma.h>, <altera_avalon_sgdma_descriptor.h>, <altera_
avalon_sgdma_regs.h>
21-22
alt_avalon_sgdma_check_descriptor_status()
UG-01085
2014.24.07
Altera Corporation
Scatter-Gather DMA Controller Core