Data Structures | |
struct | mtb_async_transfer_interface_t |
Async Transfer interface data structure. More... | |
struct | mtb_async_transfer_context_t |
Async Transfer context data structure. More... | |
struct mtb_async_transfer_interface_t |
Data Fields | ||
---|---|---|
void * | inst_ref |
The opaque pointer that is passed as the first argument to all non-DMA functions. For e.g. this could be pointer to peripheral instance base address |
volatile uint32_t * | rx_addr | Pointer to the read data source address. |
volatile uint32_t * | tx_addr | Pointer to the write data destination address. |
mtb_async_transfer_get_num_fifo_t | get_num_rx_fifo | Function to get the number of elements available in the RX FIFO. |
mtb_async_transfer_get_num_fifo_t | get_num_tx_fifo | Function to get the number of elements that can be written to the TX FIFO. |
mtb_async_transfer_set_fifo_level_t | set_rx_fifo_level | Function to set the RX FIFO level above which the interrupt is triggered. |
mtb_async_transfer_set_fifo_level_t | set_tx_fifo_level | Function to set the TX FIFO level below which the interrupt is triggered. |
mtb_async_transfer_set_enabled_t | enable_rx_event | Function to enable/disable RX FIFO level interrupt event. |
mtb_async_transfer_set_enabled_t | enable_tx_event | Function to enable/disable TX FIFO level interrupt event. |
mtb_async_transfer_set_enabled_t | dma_enable_rx | Function to enable/disable RX DMA event and RX DMA channel. |
mtb_async_transfer_set_enabled_t | dma_enable_tx | Function to enable/disable TX DMA event and TX DMA channel. |
mtb_async_transfer_get_len_t | get_rx_transfer_len | Number of elements that the peripheral interface can receive in a single transfer. |
mtb_async_transfer_get_len_t | get_tx_transfer_len | Number of elements that the peripheral interface can transmit in a single transfer. |
uint32_t | transfer_width | Width, in bytes, of each FIFO element. |
void * | dma_rx_ref | Opaque pointer that is passed as the first argument when operating on the RX DMA. |
void * | dma_tx_ref | Opaque pointer that is passed as the first argument when operating on the TX DMA. |
mtb_async_transfer_dma_set_len_t | dma_set_length | Function to set the DMA transfer length. |
mtb_async_transfer_dma_set_addr_t | dma_set_src | Function to set the DMA source address. |
mtb_async_transfer_dma_set_addr_t | dma_set_dest | Function to set the DMA destination address. |
mtb_async_transfer_enter_critical_section_t | enter_critical_section | Function to enter critical section. |
mtb_async_transfer_exit_critical_section_t | exit_critical_section | Function to exit critical section. |
struct mtb_async_transfer_context_t |
Data Fields | ||
---|---|---|
mtb_async_transfer_interface_t | interface | Async Transfer interface that holds the information needed to perform the data transfer on the peripheral. |
void * | src_addr | Pointer to the source address from which the data is transferred in case of write. |
uint32_t | src_length | Number of bytes to be transferred from the source. |
void * | dest_addr | Pointer to the destination address to which the data is transferred in case of read. |
uint32_t | dest_length | Number of bytes to be transferred to the destination. |
mtb_async_transfer_event_callback_t | callback | Callback function to be invoked once the read/write async transfer is complete. |
void * | callback_arg | Argument to be provided to the transfer complete callback function when invoked. |