50 #ifndef ti_drivers_uart_UARTSupportMSPM0G1X0X_G3X0X__include 51 #define ti_drivers_uart_UARTSupportMSPM0G1X0X_G3X0X__include 53 #include <ti/drivers/dpl/ClockP.h> 54 #include <ti/drivers/dpl/SemaphoreP.h> 57 #include <ti/drivers/utils/RingBuf.h> 109 int_fast16_t (*read)(
110 UART_Handle,
void *buf,
size_t size,
size_t *bytesRead);
130 int_fast16_t (*write)(
131 UART_Handle,
const void *buf,
size_t size,
size_t *bytesWritten);
140 uint8_t buffersSupported : 1;
141 uint8_t eventsSupported : 1;
142 uint8_t callbacksSupported : 1;
143 uint8_t dmaSupported : 1;
144 uint8_t returnMode : 1;
146 uint8_t readCancel : 1;
147 uint8_t writeCancel : 1;
148 uint8_t overrunActive : 1;
149 uint8_t readTimedOut : 1;
150 uint8_t writeTimedOut : 1;
151 uint8_t readMode : 2;
152 uint8_t writeMode : 2;
155 uint8_t readInUse : 1;
156 uint8_t writeInUse : 1;
Private Metadata structure for a UART instance supporting callbacks.
Definition: UARTSupportMSPM0G1X0X_G3X0X.h:192
UART_Callback writeCallback
Definition: UARTSupportMSPM0G1X0X_G3X0X.h:194
uint16_t bytesRead
Definition: UARTSupportMSPM0G1X0X_G3X0X.h:201
void * userArg
Definition: UARTSupportMSPM0G1X0X_G3X0X.h:207
uint8_t noOfDMAChannels
Definition: UARTSupportMSPM0G1X0X_G3X0X.h:158
const uint_least8_t UART_count
Count of UART instances.
void * object
Definition: UARTSupportMSPM0G1X0X_G3X0X.h:234
DMAMSPM0_Handle DMA_Handle
Definition: UARTSupportMSPM0G1X0X_G3X0X.h:159
int_fast16_t UART_readBuffered(UART_Handle handle, void *buf, size_t size, size_t *bytesRead)
UART read that only supports buffered mode.
int_fast16_t UART_readCallback(UART_Handle handle, void *buf, size_t size, size_t *bytesRead)
UART read that only supports callback mode.
int_fast16_t UART_writeCallback(UART_Handle handle, const void *buf, size_t size, size_t *bytesWritten)
UART write that only supports callback mode.
uint32_t eventMask
Definition: UARTSupportMSPM0G1X0X_G3X0X.h:185
uint32_t overrunCount
Definition: UARTSupportMSPM0G1X0X_G3X0X.h:157
UART_Callback readCallback
Definition: UARTSupportMSPM0G1X0X_G3X0X.h:193
UART_EventCallback_Object eventCallbackObject
Definition: UARTSupportMSPM0G1X0X_G3X0X.h:219
SemaphoreP_Handle txSem
Definition: UARTSupportMSPM0G1X0X_G3X0X.h:176
size_t txSize
Definition: UARTSupportMSPM0G1X0X_G3X0X.h:206
DMAMSPM0 Global configuration.
Definition: DMAMSPM0.h:181
UART Global configuration.
Definition: UARTSupportMSPM0G1X0X_G3X0X.h:231
void const * hwAttrs
Definition: UARTSupportMSPM0G1X0X_G3X0X.h:237
uint8_t txDmaChannel
Definition: UARTSupportMSPM0G1X0X_G3X0X.h:154
void(* UART_EventCallback)(UART_Handle handle, uint32_t event, uint32_t data, void *userArg)
The definition of a callback function used by the UART driver. The callback can occur in task or inte...
Definition: UART.h:209
uint8_t * readBuf
Definition: UARTSupportMSPM0G1X0X_G3X0X.h:195
const UART_Config UART_config[]
Array of UART_Config structure.
size_t rxSize
Definition: UARTSupportMSPM0G1X0X_G3X0X.h:205
uint16_t writeSize
Definition: UARTSupportMSPM0G1X0X_G3X0X.h:198
uint16_t readCount
Definition: UARTSupportMSPM0G1X0X_G3X0X.h:200
int_fast16_t UART_readFullFeatured(UART_Handle handle, void *buf, size_t size, size_t *bytesRead)
UART read that only supports buffered and callback mode.
RingBuf_Object rxBuf
Definition: UARTSupportMSPM0G1X0X_G3X0X.h:173
Private Metadata structure for a UART instance supporting events.
Definition: UARTSupportMSPM0G1X0X_G3X0X.h:183
const uint8_t * writeBuf
Definition: UARTSupportMSPM0G1X0X_G3X0X.h:196
UART_Buffers_Object buffersObject
Definition: UARTSupportMSPM0G1X0X_G3X0X.h:218
uint16_t bytesWritten
Definition: UARTSupportMSPM0G1X0X_G3X0X.h:202
int32_t txStatus
Definition: UARTSupportMSPM0G1X0X_G3X0X.h:204
uint8_t rxDmaChannel
Definition: UARTSupportMSPM0G1X0X_G3X0X.h:153
SemaphoreP_Handle rxSem
Definition: UARTSupportMSPM0G1X0X_G3X0X.h:175
RingBuf_Object txBuf
Definition: UARTSupportMSPM0G1X0X_G3X0X.h:174
Private Metadata structure for a UART instance supporting data structures needed for UART TX/RX execu...
Definition: UARTSupportMSPM0G1X0X_G3X0X.h:215
UART_Object object
Definition: UARTSupportMSPM0G1X0X_G3X0X.h:217
void * userArg
Definition: UARTSupportMSPM0G1X0X_G3X0X.h:139
UART_Callback_Object callbackObject
Definition: UARTSupportMSPM0G1X0X_G3X0X.h:220
struct UART_Config_ * UART_Handle
A handle that is returned from a UART_open() call.
Definition: UART.h:168
Private Metadata structure for a UART instance supporting buffers.
Definition: UARTSupportMSPM0G1X0X_G3X0X.h:168
Private Metadata structure for a UART instance.
Definition: UARTSupportMSPM0G1X0X_G3X0X.h:137
int_fast16_t UART_writeBuffered(UART_Handle handle, const void *buf, size_t size, size_t *bytesWritten)
UART write that only supports buffered mode.
uint16_t readSize
Definition: UARTSupportMSPM0G1X0X_G3X0X.h:197
const UARTSupport_Fxns * supportFxns
Definition: UARTSupportMSPM0G1X0X_G3X0X.h:138
UART Parameters.
Definition: UART.h:307
int_fast16_t UART_writeFullFeatured(UART_Handle handle, const void *buf, size_t size, size_t *bytesWritten)
UART write that only supports buffered and callback mode.
uint16_t txBufSize
Definition: UARTSupportMSPM0G1X0X_G3X0X.h:172
void(* UART_Callback)(UART_Handle handle, void *buf, size_t count, void *userArg, int_fast16_t status)
The definition of a callback function used by the UART driver when used in UART_Mode_CALLBACK. The callback can occur in task or interrupt context.
Definition: UART.h:186
uint8_t * txBufPtr
Definition: UARTSupportMSPM0G1X0X_G3X0X.h:170
uint16_t rxBufSize
Definition: UARTSupportMSPM0G1X0X_G3X0X.h:171
Function pointers to implementation/hardware specific logic.
Definition: UARTSupportMSPM0G1X0X_G3X0X.h:63
uint8_t * rxBufPtr
Definition: UARTSupportMSPM0G1X0X_G3X0X.h:169
uint16_t writeCount
Definition: UARTSupportMSPM0G1X0X_G3X0X.h:199
UART_EventCallback eventCallback
Definition: UARTSupportMSPM0G1X0X_G3X0X.h:184
int32_t rxStatus
Definition: UARTSupportMSPM0G1X0X_G3X0X.h:203
struct UART_Config_ UART_Config
UART Global configuration.
DMA driver implementation for MSPM0.