MCUXpresso SDK API Reference Manual  Rev. 0
NXP Semiconductors
 All Data Structures Functions Variables Typedefs Enumerations Enumerator Groups Pages
FlexIO eDMA Camera Driver

Overview

Data Structures

struct  flexio_camera_edma_handle_t
 Camera eDMA handle. More...
 

Typedefs

typedef void(* flexio_camera_edma_transfer_callback_t )(FLEXIO_CAMERA_Type *base, flexio_camera_edma_handle_t *handle, status_t status, void *userData)
 Camera transfer callback function. More...
 

eDMA transactional

status_t FLEXIO_CAMERA_TransferCreateHandleEDMA (FLEXIO_CAMERA_Type *base, flexio_camera_edma_handle_t *handle, flexio_camera_edma_transfer_callback_t callback, void *userData, edma_handle_t *rxEdmaHandle)
 Initializes the Camera handle, which is used in transactional functions. More...
 
status_t FLEXIO_CAMERA_TransferReceiveEDMA (FLEXIO_CAMERA_Type *base, flexio_camera_edma_handle_t *handle, flexio_camera_transfer_t *xfer)
 Receives data using eDMA. More...
 
void FLEXIO_CAMERA_TransferAbortReceiveEDMA (FLEXIO_CAMERA_Type *base, flexio_camera_edma_handle_t *handle)
 Aborts the receive data which used the eDMA. More...
 
status_t FLEXIO_CAMERA_TransferGetReceiveCountEDMA (FLEXIO_CAMERA_Type *base, flexio_camera_edma_handle_t *handle, size_t *count)
 Gets the remaining bytes to be received. More...
 

Data Structure Documentation

struct _flexio_camera_edma_handle

Forward declaration of the handle typedef.

Data Fields

flexio_camera_edma_transfer_callback_t callback
 Callback function. More...
 
void * userData
 Camera callback function parameter. More...
 
size_t rxSize
 Total bytes to be received. More...
 
edma_handle_trxEdmaHandle
 The eDMA RX channel used. More...
 
uint8_t nbytes
 eDMA minor byte transfer count initially configured. More...
 
volatile uint8_t rxState
 RX transfer state.
 

Field Documentation

flexio_camera_edma_transfer_callback_t flexio_camera_edma_handle_t::callback
void* flexio_camera_edma_handle_t::userData
size_t flexio_camera_edma_handle_t::rxSize
edma_handle_t* flexio_camera_edma_handle_t::rxEdmaHandle
uint8_t flexio_camera_edma_handle_t::nbytes

Typedef Documentation

typedef void(* flexio_camera_edma_transfer_callback_t)(FLEXIO_CAMERA_Type *base, flexio_camera_edma_handle_t *handle, status_t status, void *userData)

Function Documentation

status_t FLEXIO_CAMERA_TransferCreateHandleEDMA ( FLEXIO_CAMERA_Type base,
flexio_camera_edma_handle_t *  handle,
flexio_camera_edma_transfer_callback_t  callback,
void *  userData,
edma_handle_t rxEdmaHandle 
)
Parameters
basePointer to the FLEXIO_CAMERA_Type.
handlePointer to flexio_camera_edma_handle_t structure.
callbackThe callback function.
userDataThe parameter of the callback function.
rxEdmaHandleUser requested DMA handle for RX DMA transfer.
Return values
kStatus_SuccessSuccessfully create the handle.
kStatus_OutOfRangeThe FlexIO Camera eDMA type/handle table out of range.
status_t FLEXIO_CAMERA_TransferReceiveEDMA ( FLEXIO_CAMERA_Type base,
flexio_camera_edma_handle_t *  handle,
flexio_camera_transfer_t xfer 
)

This function receives data using eDMA. This is a non-blocking function, which returns right away. When all data is received, the receive callback function is called.

Parameters
basePointer to the FLEXIO_CAMERA_Type.
handlePointer to the flexio_camera_edma_handle_t structure.
xferCamera eDMA transfer structure, see flexio_camera_transfer_t.
Return values
kStatus_Successif succeeded, others failed.
kStatus_CAMERA_RxBusyPrevious transfer on going.
void FLEXIO_CAMERA_TransferAbortReceiveEDMA ( FLEXIO_CAMERA_Type base,
flexio_camera_edma_handle_t *  handle 
)

This function aborts the receive data which used the eDMA.

Parameters
basePointer to the FLEXIO_CAMERA_Type.
handlePointer to the flexio_camera_edma_handle_t structure.
status_t FLEXIO_CAMERA_TransferGetReceiveCountEDMA ( FLEXIO_CAMERA_Type base,
flexio_camera_edma_handle_t *  handle,
size_t *  count 
)

This function gets the number of bytes still not received.

Parameters
basePointer to the FLEXIO_CAMERA_Type.
handlePointer to the flexio_camera_edma_handle_t structure.
countNumber of bytes sent so far by the non-blocking transaction.
Return values
kStatus_SuccessSucceed get the transfer count.
kStatus_InvalidArgumentThe count parameter is invalid.