7.6.2.1 Struct dma_descriptor_config
DMA transfer descriptor configuration. When the source or destination address increment is enabled, the addresses stored into the configuration structure must correspond to the end of the transfer.
Type | Name | Description |
---|---|---|
enum dma_beat_size | beat_size |
Beat size is configurable as 8-bit, 16-bit, or 32-bit. |
enum dma_block_action | block_action |
Action taken when a block transfer is completed. |
uint16_t | block_transfer_count |
It is the number of beats in a block. This count value is decremented by one after each beat data transfer. |
bool | descriptor_valid |
Descriptor valid flag used to identify whether a descriptor is valid or not. |
uint32_t | destination_address |
Transfer destination address. |
bool | dst_increment_enable |
Used for enabling the destination address increment. |
enum dma_event_output_selection | event_output_selection |
This is used to generate an event on specific transfer action in a channel. Supported only in four lower channels. |
uint32_t | next_descriptor_address |
Set to zero for static descriptors. This must have a valid memory address for linked descriptors. |
uint32_t | source_address |
Transfer source address. |
bool | src_increment_enable |
Used for enabling the source address increment. |
enum dma_step_selection | step_selection |
This bit selects whether the source or destination address is using the step size settings. |
enum dma_address_increment_stepsize | step_size |
The step size for source/destination address increment. The next address is calculated as next_addr = addr + (2^step_size * beat size). |