![]()  | 
  
    MCUXpresso SDK API Reference Manual
    Rev. 0
    
   NXP Semiconductors 
   | 
 
Data Structures | |
| struct | flexspi_edma_handle_t | 
| FLEXSPI DMA transfer handle, users should not touch the content of the handle.  More... | |
Typedefs | |
| typedef void(* | flexspi_edma_callback_t )(FLEXSPI_Type *base, flexspi_edma_handle_t *handle, status_t status, void *userData) | 
| FLEXSPI eDMA transfer callback function for finish and error.  | |
Enumerations | |
| enum | flexspi_edma_transfer_nsize_t {  kFLEXPSI_EDMAnSize1Bytes = 0x1U, kFLEXPSI_EDMAnSize2Bytes = 0x2U, kFLEXPSI_EDMAnSize4Bytes = 0x4U, kFLEXPSI_EDMAnSize8Bytes = 0x8U, kFLEXPSI_EDMAnSize32Bytes = 0x20U }  | 
| eDMA transfer configuration  More... | |
Driver version | |
| #define | FSL_FLEXSPI_EDMA_DRIVER_VERSION (MAKE_VERSION(2, 0, 2)) | 
| FLEXSPI EDMA driver version 2.0.2.  More... | |
FLEXSPI eDMA Transactional | |
| void | FLEXSPI_TransferCreateHandleEDMA (FLEXSPI_Type *base, flexspi_edma_handle_t *handle, flexspi_edma_callback_t callback, void *userData, edma_handle_t *txDmaHandle, edma_handle_t *rxDmaHandle) | 
| Initializes the FLEXSPI handle for transfer which is used in transactional functions and set the callback.  More... | |
| void | FLEXSPI_TransferUpdateSizeEDMA (FLEXSPI_Type *base, flexspi_edma_handle_t *handle, flexspi_edma_transfer_nsize_t nsize) | 
| Update FLEXSPI EDMA transfer source data transfer size(SSIZE) and destination data transfer size(DSIZE).  More... | |
| status_t | FLEXSPI_TransferEDMA (FLEXSPI_Type *base, flexspi_edma_handle_t *handle, flexspi_transfer_t *xfer) | 
| Transfers FLEXSPI data using an eDMA non-blocking method.  More... | |
| void | FLEXSPI_TransferAbortEDMA (FLEXSPI_Type *base, flexspi_edma_handle_t *handle) | 
| Aborts the transfer data using eDMA.  More... | |
| status_t | FLEXSPI_TransferGetCountEDMA (FLEXSPI_Type *base, flexspi_edma_handle_t *handle, size_t *count) | 
| Gets the transferred counts of transfer.  More... | |
| struct _flexspi_edma_handle | 
Data Fields | |
| edma_handle_t * | txDmaHandle | 
| eDMA handler for FLEXSPI Tx.  More... | |
| edma_handle_t * | rxDmaHandle | 
| eDMA handler for FLEXSPI Rx.  More... | |
| size_t | transferSize | 
| Bytes need to transfer.  More... | |
| flexspi_edma_transfer_nsize_t | nsize | 
| eDMA SSIZE/DSIZE in each transfer.  More... | |
| uint8_t | nbytes | 
| eDMA minor byte transfer count initially configured.  More... | |
| uint8_t | count | 
| The transfer data count in a DMA request.  More... | |
| uint32_t | state | 
| Internal state for FLEXSPI eDMA transfer.  More... | |
| flexspi_edma_callback_t | completionCallback | 
| A callback function called after the eDMA transfer is finished.  More... | |
| void * | userData | 
| User callback parameter.  | |
| edma_handle_t* flexspi_edma_handle_t::txDmaHandle | 
| edma_handle_t* flexspi_edma_handle_t::rxDmaHandle | 
| size_t flexspi_edma_handle_t::transferSize | 
| flexspi_edma_transfer_nsize_t flexspi_edma_handle_t::nsize | 
| uint8_t flexspi_edma_handle_t::nbytes | 
| uint8_t flexspi_edma_handle_t::count | 
| uint32_t flexspi_edma_handle_t::state | 
| flexspi_edma_callback_t flexspi_edma_handle_t::completionCallback | 
| #define FSL_FLEXSPI_EDMA_DRIVER_VERSION (MAKE_VERSION(2, 0, 2)) | 
| void FLEXSPI_TransferCreateHandleEDMA | ( | FLEXSPI_Type * | base, | 
| flexspi_edma_handle_t * | handle, | ||
| flexspi_edma_callback_t | callback, | ||
| void * | userData, | ||
| edma_handle_t * | txDmaHandle, | ||
| edma_handle_t * | rxDmaHandle | ||
| ) | 
| base | FLEXSPI peripheral base address | 
| handle | Pointer to flexspi_edma_handle_t structure | 
| callback | FLEXSPI callback, NULL means no callback. | 
| userData | User callback function data. | 
| txDmaHandle | User requested DMA handle for TX DMA transfer. | 
| rxDmaHandle | User requested DMA handle for RX DMA transfer. | 
| void FLEXSPI_TransferUpdateSizeEDMA | ( | FLEXSPI_Type * | base, | 
| flexspi_edma_handle_t * | handle, | ||
| flexspi_edma_transfer_nsize_t | nsize | ||
| ) | 
| base | FLEXSPI peripheral base address | 
| handle | Pointer to flexspi_edma_handle_t structure | 
| nsize | FLEXSPI DMA transfer data transfer size(SSIZE/DSIZE), by default the size is kFLEXPSI_EDMAnSize1Bytes(one byte). | 
| status_t FLEXSPI_TransferEDMA | ( | FLEXSPI_Type * | base, | 
| flexspi_edma_handle_t * | handle, | ||
| flexspi_transfer_t * | xfer | ||
| ) | 
This function writes/receives data to/from the FLEXSPI transmit/receive FIFO. This function is non-blocking.
| base | FLEXSPI peripheral base address. | 
| handle | Pointer to flexspi_edma_handle_t structure | 
| xfer | FLEXSPI transfer structure. | 
| kStatus_FLEXSPI_Busy | FLEXSPI is busy transfer. | 
| kStatus_InvalidArgument | The watermark configuration is invalid, the watermark should be power of 2 to do successfully EDMA transfer. | 
| kStatus_Success | FLEXSPI successfully start edma transfer. | 
| void FLEXSPI_TransferAbortEDMA | ( | FLEXSPI_Type * | base, | 
| flexspi_edma_handle_t * | handle | ||
| ) | 
This function aborts the transfer data using eDMA.
| base | FLEXSPI peripheral base address. | 
| handle | Pointer to flexspi_edma_handle_t structure | 
| status_t FLEXSPI_TransferGetCountEDMA | ( | FLEXSPI_Type * | base, | 
| flexspi_edma_handle_t * | handle, | ||
| size_t * | count | ||
| ) | 
| base | FLEXSPI peripheral base address. | 
| handle | Pointer to flexspi_edma_handle_t structure. | 
| count | Bytes transfer. | 
| kStatus_Success | Succeed get the transfer count. | 
| kStatus_NoTransferInProgress | There is not a non-blocking transaction currently in progress. |