![]() |
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. |