MCUXpresso SDK API Reference Manual
Rev. 0
NXP Semiconductors
|
Data Structures | |
struct | i2s_dma_handle_t |
i2s dma handle More... | |
Typedefs | |
typedef void(* | i2s_dma_transfer_callback_t )(I2S_Type *base, i2s_dma_handle_t *handle, status_t completionStatus, void *userData) |
Callback function invoked from DMA API on completion. More... | |
Driver version | |
#define | FSL_I2S_DMA_DRIVER_VERSION (MAKE_VERSION(2, 1, 0)) |
I2S DMA driver version 2.1.0. More... | |
DMA API | |
void | I2S_TxTransferCreateHandleDMA (I2S_Type *base, i2s_dma_handle_t *handle, dma_handle_t *dmaHandle, i2s_dma_transfer_callback_t callback, void *userData) |
Initializes handle for transfer of audio data. More... | |
status_t | I2S_TxTransferSendDMA (I2S_Type *base, i2s_dma_handle_t *handle, i2s_transfer_t transfer) |
Begins or queue sending of the given data. More... | |
void | I2S_TransferAbortDMA (I2S_Type *base, i2s_dma_handle_t *handle) |
Aborts transfer of data. More... | |
void | I2S_RxTransferCreateHandleDMA (I2S_Type *base, i2s_dma_handle_t *handle, dma_handle_t *dmaHandle, i2s_dma_transfer_callback_t callback, void *userData) |
Initializes handle for reception of audio data. More... | |
status_t | I2S_RxTransferReceiveDMA (I2S_Type *base, i2s_dma_handle_t *handle, i2s_transfer_t transfer) |
Begins or queue reception of data into given buffer. More... | |
void | I2S_DMACallback (dma_handle_t *handle, void *userData, bool transferDone, uint32_t tcds) |
Invoked from DMA interrupt handler. More... | |
struct _i2s_dma_handle |
Members not to be accessed / modified outside of the driver.
Data Fields | |
uint32_t | state |
Internal state of I2S DMA transfer. | |
uint8_t | bytesPerFrame |
bytes per frame | |
i2s_dma_transfer_callback_t | completionCallback |
Callback function pointer. | |
void * | userData |
Application data passed to callback. | |
dma_handle_t * | dmaHandle |
DMA handle. | |
volatile i2s_transfer_t | i2sQueue [I2S_NUM_BUFFERS] |
Transfer queue storing transfer buffers. | |
volatile uint8_t | queueUser |
Queue index where user's next transfer will be stored. | |
volatile uint8_t | queueDriver |
Queue index of buffer actually used by the driver. | |
#define FSL_I2S_DMA_DRIVER_VERSION (MAKE_VERSION(2, 1, 0)) |
typedef void(* i2s_dma_transfer_callback_t)(I2S_Type *base, i2s_dma_handle_t *handle, status_t completionStatus, void *userData) |
base | I2S base pointer. |
handle | pointer to I2S transaction. |
completionStatus | status of the transaction. |
userData | optional pointer to user arguments data. |
void I2S_TxTransferCreateHandleDMA | ( | I2S_Type * | base, |
i2s_dma_handle_t * | handle, | ||
dma_handle_t * | dmaHandle, | ||
i2s_dma_transfer_callback_t | callback, | ||
void * | userData | ||
) |
base | I2S base pointer. |
handle | pointer to handle structure. |
dmaHandle | pointer to dma handle structure. |
callback | function to be called back when transfer is done or fails. |
userData | pointer to data passed to callback. |
status_t I2S_TxTransferSendDMA | ( | I2S_Type * | base, |
i2s_dma_handle_t * | handle, | ||
i2s_transfer_t | transfer | ||
) |
base | I2S base pointer. |
handle | pointer to handle structure. |
transfer | data buffer. |
kStatus_Success | |
kStatus_I2S_Busy | if all queue slots are occupied with unsent buffers. |
void I2S_TransferAbortDMA | ( | I2S_Type * | base, |
i2s_dma_handle_t * | handle | ||
) |
base | I2S base pointer. |
handle | pointer to handle structure. |
void I2S_RxTransferCreateHandleDMA | ( | I2S_Type * | base, |
i2s_dma_handle_t * | handle, | ||
dma_handle_t * | dmaHandle, | ||
i2s_dma_transfer_callback_t | callback, | ||
void * | userData | ||
) |
base | I2S base pointer. |
handle | pointer to handle structure. |
dmaHandle | pointer to dma handle structure. |
callback | function to be called back when transfer is done or fails. |
userData | pointer to data passed to callback. |
status_t I2S_RxTransferReceiveDMA | ( | I2S_Type * | base, |
i2s_dma_handle_t * | handle, | ||
i2s_transfer_t | transfer | ||
) |
base | I2S base pointer. |
handle | pointer to handle structure. |
transfer | data buffer. |
kStatus_Success | |
kStatus_I2S_Busy | if all queue slots are occupied with buffers which are not full. |
void I2S_DMACallback | ( | dma_handle_t * | handle, |
void * | userData, | ||
bool | transferDone, | ||
uint32_t | tcds | ||
) |
handle | pointer to DMA handle structure. |
userData | argument for user callback. |
transferDone | if transfer was done. |
tcds |