RTEMS 6.1-rc2
Loading...
Searching...
No Matches
Data Structures | Variables
Flexio_edma_uart

Data Structures

struct  _flexio_uart_edma_handle
 UART eDMA handle. More...
 

Variables

flexio_uart_edma_transfer_callback_t _flexio_uart_edma_handle::callback
 
void * _flexio_uart_edma_handle::userData
 
size_t _flexio_uart_edma_handle::txDataSizeAll
 
size_t _flexio_uart_edma_handle::rxDataSizeAll
 
edma_handle_t_flexio_uart_edma_handle::txEdmaHandle
 
edma_handle_t_flexio_uart_edma_handle::rxEdmaHandle
 
uint8_t _flexio_uart_edma_handle::nbytes
 
volatile uint8_t _flexio_uart_edma_handle::txState
 
volatile uint8_t _flexio_uart_edma_handle::rxState
 

Driver version

typedef struct _flexio_uart_edma_handle flexio_uart_edma_handle_t
 
typedef void(* flexio_uart_edma_transfer_callback_t) (FLEXIO_UART_Type *base, flexio_uart_edma_handle_t *handle, status_t status, void *userData)
 UART transfer callback function.
 
#define FSL_FLEXIO_UART_EDMA_DRIVER_VERSION   (MAKE_VERSION(2, 4, 1))
 FlexIO UART EDMA driver version.
 

eDMA transactional

status_t FLEXIO_UART_TransferCreateHandleEDMA (FLEXIO_UART_Type *base, flexio_uart_edma_handle_t *handle, flexio_uart_edma_transfer_callback_t callback, void *userData, edma_handle_t *txEdmaHandle, edma_handle_t *rxEdmaHandle)
 Initializes the UART handle which is used in transactional functions.
 
status_t FLEXIO_UART_TransferSendEDMA (FLEXIO_UART_Type *base, flexio_uart_edma_handle_t *handle, flexio_uart_transfer_t *xfer)
 Sends data using eDMA.
 
status_t FLEXIO_UART_TransferReceiveEDMA (FLEXIO_UART_Type *base, flexio_uart_edma_handle_t *handle, flexio_uart_transfer_t *xfer)
 Receives data using eDMA.
 
void FLEXIO_UART_TransferAbortSendEDMA (FLEXIO_UART_Type *base, flexio_uart_edma_handle_t *handle)
 Aborts the sent data which using eDMA.
 
void FLEXIO_UART_TransferAbortReceiveEDMA (FLEXIO_UART_Type *base, flexio_uart_edma_handle_t *handle)
 Aborts the receive data which using eDMA.
 
status_t FLEXIO_UART_TransferGetSendCountEDMA (FLEXIO_UART_Type *base, flexio_uart_edma_handle_t *handle, size_t *count)
 Gets the number of bytes sent out.
 
status_t FLEXIO_UART_TransferGetReceiveCountEDMA (FLEXIO_UART_Type *base, flexio_uart_edma_handle_t *handle, size_t *count)
 Gets the number of bytes received.
 

Detailed Description

Function Documentation

◆ FLEXIO_UART_TransferAbortReceiveEDMA()

void FLEXIO_UART_TransferAbortReceiveEDMA ( FLEXIO_UART_Type base,
flexio_uart_edma_handle_t handle 
)

Aborts the receive data which using eDMA.

This function aborts the receive data which using eDMA.

Parameters
basePointer to FLEXIO_UART_Type
handlePointer to flexio_uart_edma_handle_t structure

brief Aborts the receive data which using eDMA.

This function aborts the receive data which using eDMA.

param base Pointer to FLEXIO_UART_Type param handle Pointer to flexio_uart_edma_handle_t structure

◆ FLEXIO_UART_TransferAbortSendEDMA()

void FLEXIO_UART_TransferAbortSendEDMA ( FLEXIO_UART_Type base,
flexio_uart_edma_handle_t handle 
)

Aborts the sent data which using eDMA.

This function aborts sent data which using eDMA.

Parameters
basePointer to FLEXIO_UART_Type
handlePointer to flexio_uart_edma_handle_t structure

brief Aborts the sent data which using eDMA.

This function aborts sent data which using eDMA.

param base Pointer to FLEXIO_UART_Type param handle Pointer to flexio_uart_edma_handle_t structure

◆ FLEXIO_UART_TransferCreateHandleEDMA()

status_t FLEXIO_UART_TransferCreateHandleEDMA ( FLEXIO_UART_Type base,
flexio_uart_edma_handle_t handle,
flexio_uart_edma_transfer_callback_t  callback,
void *  userData,
edma_handle_t txEdmaHandle,
edma_handle_t rxEdmaHandle 
)

Initializes the UART handle which is used in transactional functions.

Parameters
basePointer to FLEXIO_UART_Type.
handlePointer to flexio_uart_edma_handle_t structure.
callbackThe callback function.
userDataThe parameter of the callback function.
rxEdmaHandleUser requested DMA handle for RX DMA transfer.
txEdmaHandleUser requested DMA handle for TX DMA transfer.
Return values
kStatus_SuccessSuccessfully create the handle.
kStatus_OutOfRangeThe FlexIO SPI eDMA type/handle table out of range.

brief Initializes the UART handle which is used in transactional functions.

param base Pointer to FLEXIO_UART_Type. param handle Pointer to flexio_uart_edma_handle_t structure. param callback The callback function. param userData The parameter of the callback function. param rxEdmaHandle User requested DMA handle for RX DMA transfer. param txEdmaHandle User requested DMA handle for TX DMA transfer. retval kStatus_Success Successfully create the handle. retval kStatus_OutOfRange The FlexIO SPI eDMA type/handle table out of range.

◆ FLEXIO_UART_TransferGetReceiveCountEDMA()

status_t FLEXIO_UART_TransferGetReceiveCountEDMA ( FLEXIO_UART_Type base,
flexio_uart_edma_handle_t handle,
size_t *  count 
)

Gets the number of bytes received.

This function gets the number of bytes received.

Parameters
basePointer to FLEXIO_UART_Type
handlePointer to flexio_uart_edma_handle_t structure
countNumber of bytes received so far by the non-blocking transaction.
Return values
kStatus_NoTransferInProgresstransfer has finished or no transfer in progress.
kStatus_SuccessSuccessfully return the count.

brief Gets the number of bytes received.

This function gets the number of bytes received.

param base Pointer to FLEXIO_UART_Type param handle Pointer to flexio_uart_edma_handle_t structure param count Number of bytes received so far by the non-blocking transaction. retval kStatus_NoTransferInProgress transfer has finished or no transfer in progress. retval kStatus_Success Successfully return the count.

◆ FLEXIO_UART_TransferGetSendCountEDMA()

status_t FLEXIO_UART_TransferGetSendCountEDMA ( FLEXIO_UART_Type base,
flexio_uart_edma_handle_t handle,
size_t *  count 
)

Gets the number of bytes sent out.

This function gets the number of bytes sent out.

Parameters
basePointer to FLEXIO_UART_Type
handlePointer to flexio_uart_edma_handle_t structure
countNumber of bytes sent so far by the non-blocking transaction.
Return values
kStatus_NoTransferInProgresstransfer has finished or no transfer in progress.
kStatus_SuccessSuccessfully return the count.

brief Gets the number of bytes sent out.

This function gets the number of bytes sent out.

param base Pointer to FLEXIO_UART_Type param handle Pointer to flexio_uart_edma_handle_t structure param count Number of bytes sent so far by the non-blocking transaction. retval kStatus_NoTransferInProgress transfer has finished or no transfer in progress. retval kStatus_Success Successfully return the count.

◆ FLEXIO_UART_TransferReceiveEDMA()

status_t FLEXIO_UART_TransferReceiveEDMA ( FLEXIO_UART_Type base,
flexio_uart_edma_handle_t handle,
flexio_uart_transfer_t xfer 
)

Receives data using eDMA.

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 FLEXIO_UART_Type
handlePointer to flexio_uart_edma_handle_t structure
xferUART eDMA transfer structure, see flexio_uart_transfer_t.
Return values
kStatus_Successif succeed, others failed.
kStatus_UART_RxBusyPrevious transfer on going.

brief Receives data using eDMA.

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.

param base Pointer to FLEXIO_UART_Type param handle Pointer to flexio_uart_edma_handle_t structure param xfer UART eDMA transfer structure, see flexio_uart_transfer_t. retval kStatus_Success if succeed, others failed. retval kStatus_UART_RxBusy Previous transfer on going.

◆ FLEXIO_UART_TransferSendEDMA()

status_t FLEXIO_UART_TransferSendEDMA ( FLEXIO_UART_Type base,
flexio_uart_edma_handle_t handle,
flexio_uart_transfer_t xfer 
)

Sends data using eDMA.

This function sends data using eDMA. This is a non-blocking function, which returns right away. When all data is sent out, the send callback function is called.

Parameters
basePointer to FLEXIO_UART_Type
handleUART handle pointer.
xferUART eDMA transfer structure, see flexio_uart_transfer_t.
Return values
kStatus_Successif succeed, others failed.
kStatus_FLEXIO_UART_TxBusyPrevious transfer on going.

brief Sends data using eDMA.

This function sends data using eDMA. This is a non-blocking function, which returns right away. When all data is sent out, the send callback function is called.

param base Pointer to FLEXIO_UART_Type param handle UART handle pointer. param xfer UART eDMA transfer structure, see flexio_uart_transfer_t. retval kStatus_Success if succeed, others failed. retval kStatus_FLEXIO_UART_TxBusy Previous transfer on going.

Variable Documentation

◆ callback

flexio_uart_edma_transfer_callback_t _flexio_uart_edma_handle::callback

Callback function.

◆ nbytes

uint8_t _flexio_uart_edma_handle::nbytes

eDMA minor byte transfer count initially configured.

◆ rxDataSizeAll

size_t _flexio_uart_edma_handle::rxDataSizeAll

Total bytes to be received.

◆ rxEdmaHandle

edma_handle_t* _flexio_uart_edma_handle::rxEdmaHandle

The eDMA RX channel used.

◆ rxState

volatile uint8_t _flexio_uart_edma_handle::rxState

RX transfer state

◆ txDataSizeAll

size_t _flexio_uart_edma_handle::txDataSizeAll

Total bytes to be sent.

◆ txEdmaHandle

edma_handle_t* _flexio_uart_edma_handle::txEdmaHandle

The eDMA TX channel used.

◆ txState

volatile uint8_t _flexio_uart_edma_handle::txState

TX transfer state.

◆ userData

void* _flexio_uart_edma_handle::userData

UART callback function parameter.