9#ifndef _FSL_FLEXSPI_EDMA_H_
10#define _FSL_FLEXSPI_EDMA_H_
12#include "fsl_flexspi.h"
13#if defined(FSL_FEATURE_SOC_DMAMUX_COUNT) && FSL_FEATURE_SOC_DMAMUX_COUNT
14#include "fsl_dmamux.h"
30#define FSL_FLEXSPI_EDMA_DRIVER_VERSION (MAKE_VERSION(2, 3, 2))
37 flexspi_edma_handle_t *handle,
68#if defined(__cplusplus)
88 flexspi_edma_handle_t *handle,
104 flexspi_edma_handle_t *handle,
144#if defined(__cplusplus)
struct _edma_handle edma_handle_t
eDMA transfer handle structure
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.
Definition fsl_flexspi_edma.c:161
_flexspi_edma_ntransfer_size
eDMA transfer configuration
Definition fsl_flexspi_edma.h:43
uint32_t state
Definition fsl_flexspi_edma.h:60
size_t transferSize
Definition fsl_flexspi_edma.h:56
flexspi_edma_transfer_nsize_t nsize
Definition fsl_flexspi_edma.h:57
void * userData
Definition fsl_flexspi_edma.h:62
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 call...
Definition fsl_flexspi_edma.c:108
enum _flexspi_edma_ntransfer_size flexspi_edma_transfer_nsize_t
eDMA transfer configuration
void FLEXSPI_TransferAbortEDMA(FLEXSPI_Type *base, flexspi_edma_handle_t *handle)
Aborts the transfer data using eDMA.
Definition fsl_flexspi_edma.c:315
flexspi_edma_callback_t completionCallback
Definition fsl_flexspi_edma.h:61
edma_handle_t * txDmaHandle
Definition fsl_flexspi_edma.h:54
status_t FLEXSPI_TransferGetTransferCountEDMA(FLEXSPI_Type *base, flexspi_edma_handle_t *handle, size_t *count)
Gets the transferred counts of transfer.
Definition fsl_flexspi_edma.c:334
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.
Definition fsl_flexspi_edma.h:36
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(DSIZ...
Definition fsl_flexspi_edma.c:142
uint8_t nbytes
Definition fsl_flexspi_edma.h:58
edma_handle_t * rxDmaHandle
Definition fsl_flexspi_edma.h:55
uint8_t count
Definition fsl_flexspi_edma.h:59
@ kFLEXPSI_EDMAnSize2Bytes
Definition fsl_flexspi_edma.h:45
@ kFLEXPSI_EDMAnSize4Bytes
Definition fsl_flexspi_edma.h:46
@ kFLEXPSI_EDMAnSize1Bytes
Definition fsl_flexspi_edma.h:44
@ kFLEXPSI_EDMAnSize8Bytes
Definition fsl_flexspi_edma.h:47
@ kFLEXPSI_EDMAnSize32Bytes
Definition fsl_flexspi_edma.h:48
struct _flexspi_transfer flexspi_transfer_t
Transfer structure for FLEXSPI.
int32_t status_t
Type used for all status and error return values.
Definition fsl_common.h:225
Definition MIMXRT1052.h:21299
FLEXSPI DMA transfer handle, users should not touch the content of the handle.
Definition fsl_flexspi_edma.h:53