![]() |
MCUXpresso SDK API Reference Manual
Rev 2.16.000
NXP Semiconductors
|
The QSPI_EDMA module provide a method for QSPI transfer operation based on EDMA.
Data Structures | |
| struct | qspi_slave_edma_handle_t |
| QUEUEDSPI master EDMA transfer handle structure used for transactional API. More... | |
Typedefs | |
| typedef void(* | qspi_edma_transfer_callback_t )(qspi_master_edma_handle_t *psHandle, status_t eCompletionStatus, void *pUserData) |
| Completion callback function pointer type. More... | |
Functions | |
| void | QSPI_MasterTransferCreateHandleEDMA (QSPI_Type *base, qspi_master_edma_handle_t *psHandle, qspi_edma_transfer_callback_t pfCallback, void *pUserData, DMA_Type *psEdmaBase, edma_channel_t eEdmaTxChannel, edma_channel_t eEdmaRxChannel) |
| Initialize the QUEUEDSPI master EDMA handle. More... | |
| status_t | QSPI_MasterTransferEDMA (qspi_master_edma_handle_t *psHandle, qspi_transfer_t *psXfer) |
| EDMA method of QUEUEDSPI master transfer. More... | |
| status_t | QSPI_MasterTransferGetCountEDMA (qspi_master_edma_handle_t *psHandle, uint16_t *pu16Count) |
| Get the master EDMA transfer count. More... | |
| void | QSPI_MasterTransferAbortEDMA (qspi_master_edma_handle_t *psHandle) |
| Abort a transfer that uses EDMA for master. More... | |
| void | QSPI_SlaveTransferCreateHandleEDMA (QSPI_Type *base, qspi_slave_edma_handle_t *psHandle, qspi_edma_transfer_callback_t pfCallback, void *pUserData, DMA_Type *psEdmaBase, edma_channel_t eEdmaTxChannel, edma_channel_t eEdmaRxChannel) |
| Initialize the QUEUEDSPI slave EDMA handle. More... | |
| status_t | QSPI_SlaveTransferEDMA (qspi_slave_edma_handle_t *psHandle, qspi_transfer_t *psXfer) |
| EDMA method of QUEUEDSPI slave transfer. More... | |
| status_t | QSPI_SlaveTransferGetCountEDMA (qspi_slave_edma_handle_t *psHandle, uint16_t *pu16Count) |
| Get the slave EDMA transfer count. More... | |
| void | QSPI_SlaveTransferAbortEDMA (qspi_slave_edma_handle_t *psHandle) |
| Abort a transfer that uses EDMA for slave. More... | |
Driver version | |
| #define | FSL_QSPI_EDMA_DRIVER_VERSION (MAKE_VERSION(2, 0, 0)) |
| QSPI EDMA driver version. More... | |
| struct _qspi_master_edma_handle |
Forward declaration of the _qspi_master_edma_handle typedefs.
This struct should be sizeof(edma_channel_tcd_t) aligned
Data Fields | |
| QSPI_Type * | base |
| Base address of the QSPI Peripheral. | |
| volatile uint8_t | u8State |
| QUEUEDSPI transfer state , defined in _qspi_transfer_state. More... | |
| uint16_t | u16TotalByteCount |
| A number of transfer bytes. More... | |
| qspi_data_width_t | eDataWidth |
| The desired number of bits per frame. More... | |
| uint16_t | u16TxDummyData |
| Used if txData is NULL. More... | |
| uint16_t | u16RxDummyData |
| Used if rxData is NULL. More... | |
| edma_handle_t | sTxHandle |
| edma_handle_t handle point used for transmitting data. More... | |
| edma_handle_t | sRxHandle |
| edma_handle_t handle point used for receiving data. More... | |
| bool | bIsTxInProgress |
| Indicates whether the transmit is in progress. More... | |
| bool | bIsRxInProgress |
| Indicates whether the receive is in progress. More... | |
| qspi_edma_transfer_callback_t | pfCallback |
| Completion callback. More... | |
| void * | pUserData |
| Callback user data. More... | |
| volatile bool | bIsPcsActiveAfterTransfer |
| Indicates whether the PCS signal is active after the last frame transfer, This is not used in slave transfer. More... | |
| volatile uint8_t qspi_slave_edma_handle_t::u8State |
| uint16_t qspi_slave_edma_handle_t::u16TotalByteCount |
| qspi_data_width_t qspi_slave_edma_handle_t::eDataWidth |
| uint16_t qspi_slave_edma_handle_t::u16TxDummyData |
| uint16_t qspi_slave_edma_handle_t::u16RxDummyData |
| edma_handle_t qspi_slave_edma_handle_t::sTxHandle |
| edma_handle_t qspi_slave_edma_handle_t::sRxHandle |
| bool qspi_slave_edma_handle_t::bIsTxInProgress |
| bool qspi_slave_edma_handle_t::bIsRxInProgress |
| qspi_edma_transfer_callback_t qspi_slave_edma_handle_t::pfCallback |
| void* qspi_slave_edma_handle_t::pUserData |
| volatile bool qspi_slave_edma_handle_t::bIsPcsActiveAfterTransfer |
| #define FSL_QSPI_EDMA_DRIVER_VERSION (MAKE_VERSION(2, 0, 0)) |
| typedef void(* qspi_edma_transfer_callback_t)(qspi_master_edma_handle_t *psHandle, status_t eCompletionStatus, void *pUserData) |
| base | QUEUEDSPI peripheral base address. |
| psHandle | Pointer to the handle for the QUEUEDSPI master. |
| eCompletionStatus | Success or error code describing whether the transfer completed. |
| pUserData | Arbitrary pointer-dataSized value passed from the application. |
| void QSPI_MasterTransferCreateHandleEDMA | ( | QSPI_Type * | base, |
| qspi_master_edma_handle_t * | psHandle, | ||
| qspi_edma_transfer_callback_t | pfCallback, | ||
| void * | pUserData, | ||
| DMA_Type * | psEdmaBase, | ||
| edma_channel_t | eEdmaTxChannel, | ||
| edma_channel_t | eEdmaRxChannel | ||
| ) |
This function initializes the QUEUEDSPI EDMA master handle which can be used for QUEUEDSPI EDMA master transactional APIs. Usually, for a specified QUEUEDSPI instance, call this API once to get the initialized handle.
| base | QUEUEDSPI peripheral base address. |
| psHandle | QUEUEDSPI handle pointer to qspi_master_edma_handle_t. |
| pfCallback | QUEUEDSPI callback. |
| pUserData | callback function parameter. |
| psEdmaBase | base address for the EDMA |
| eEdmaTxChannel | Channel of the EDMA used for QSPI Tx |
| eEdmaRxChannel | Channel of the EDMA used for QSPI Rx |
| status_t QSPI_MasterTransferEDMA | ( | qspi_master_edma_handle_t * | psHandle, |
| qspi_transfer_t * | psXfer | ||
| ) |
This function transfers data using EDMA. This is a non-blocking function, which returns right away. When all data is transferred, the callback function is called.
| psHandle | pointer to qspi_master_edma_handle_t structure which stores the transfer state. |
| psXfer | pointer to qspi_transfer_t structure. |
| status_t QSPI_MasterTransferGetCountEDMA | ( | qspi_master_edma_handle_t * | psHandle, |
| uint16_t * | pu16Count | ||
| ) |
| psHandle | Pointer to the qspi_master_edma_handle_t structure which stores the transfer state. |
| pu16Count | The number of bytes transferred by using the EDMA transaction. |
| void QSPI_MasterTransferAbortEDMA | ( | qspi_master_edma_handle_t * | psHandle | ) |
| psHandle | Pointer to the qspi_master_edma_handle_t structure which stores the transfer state. |
| void QSPI_SlaveTransferCreateHandleEDMA | ( | QSPI_Type * | base, |
| qspi_slave_edma_handle_t * | psHandle, | ||
| qspi_edma_transfer_callback_t | pfCallback, | ||
| void * | pUserData, | ||
| DMA_Type * | psEdmaBase, | ||
| edma_channel_t | eEdmaTxChannel, | ||
| edma_channel_t | eEdmaRxChannel | ||
| ) |
This function initializes the QUEUEDSPI EDMA handle which can be used for other QUEUEDSPI transactional APIs. Usually, for a specified QUEUEDSPI instance, call this API once to get the initialized handle.
| base | QUEUEDSPI peripheral base address. |
| psHandle | QUEUEDSPI handle pointer to qspi_slave_edma_handle_t. |
| pfCallback | QUEUEDSPI callback. |
| pUserData | callback function parameter. |
| psEdmaBase | base address for the EDMA |
| eEdmaTxChannel | Channel of the EDMA used for QSPI Tx |
| eEdmaRxChannel | Channel of the EDMA used for QSPI Rx |
| status_t QSPI_SlaveTransferEDMA | ( | qspi_slave_edma_handle_t * | psHandle, |
| qspi_transfer_t * | psXfer | ||
| ) |
This function transfers data using EDMA. This is a non-blocking function, which returns right away. When all data is transferred, the callback function is called.
| psHandle | pointer to qspi_slave_edma_handle_t structure which stores the transfer state. |
| psXfer | pointer to qspi_transfer_t structure. |
| status_t QSPI_SlaveTransferGetCountEDMA | ( | qspi_slave_edma_handle_t * | psHandle, |
| uint16_t * | pu16Count | ||
| ) |
| psHandle | Pointer to the qspi_slave_edma_handle_t structure which stores the transfer state. |
| pu16Count | The number of bytes transferred by using the EDMA transaction. |
| void QSPI_SlaveTransferAbortEDMA | ( | qspi_slave_edma_handle_t * | psHandle | ) |
| psHandle | Pointer to the qspi_slave_edma_handle_t structure which stores the transfer state. |