diff --git a/src/main/drivers/serial.c b/src/main/drivers/serial.c index c6cab03d7..4cb8cb390 100644 --- a/src/main/drivers/serial.c +++ b/src/main/drivers/serial.c @@ -56,12 +56,12 @@ void serialWriteBuf(serialPort_t *instance, uint8_t *data, int count) } } -uint32_t serialRxBytesWaiting(serialPort_t *instance) +uint32_t serialRxBytesWaiting(const serialPort_t *instance) { return instance->vTable->serialTotalRxWaiting(instance); } -uint32_t serialTxBytesFree(serialPort_t *instance) +uint32_t serialTxBytesFree(const serialPort_t *instance) { return instance->vTable->serialTotalTxFree(instance); } @@ -76,7 +76,7 @@ void serialSetBaudRate(serialPort_t *instance, uint32_t baudRate) instance->vTable->serialSetBaudRate(instance, baudRate); } -bool isSerialTransmitBufferEmpty(serialPort_t *instance) +bool isSerialTransmitBufferEmpty(const serialPort_t *instance) { return instance->vTable->isSerialTransmitBufferEmpty(instance); } diff --git a/src/main/drivers/serial.h b/src/main/drivers/serial.h index fa855e835..279e3f5de 100644 --- a/src/main/drivers/serial.h +++ b/src/main/drivers/serial.h @@ -62,15 +62,15 @@ typedef struct serialPort_s { struct serialPortVTable { void (*serialWrite)(serialPort_t *instance, uint8_t ch); - uint32_t (*serialTotalRxWaiting)(serialPort_t *instance); - uint32_t (*serialTotalTxFree)(serialPort_t *instance); + uint32_t (*serialTotalRxWaiting)(const serialPort_t *instance); + uint32_t (*serialTotalTxFree)(const serialPort_t *instance); uint8_t (*serialRead)(serialPort_t *instance); // Specified baud rate may not be allowed by an implementation, use serialGetBaudRate to determine actual baud rate in use. void (*serialSetBaudRate)(serialPort_t *instance, uint32_t baudRate); - bool (*isSerialTransmitBufferEmpty)(serialPort_t *instance); + bool (*isSerialTransmitBufferEmpty)(const serialPort_t *instance); void (*setMode)(serialPort_t *instance, portMode_t mode); @@ -81,13 +81,13 @@ struct serialPortVTable { }; void serialWrite(serialPort_t *instance, uint8_t ch); -uint32_t serialRxBytesWaiting(serialPort_t *instance); -uint32_t serialTxBytesFree(serialPort_t *instance); +uint32_t serialRxBytesWaiting(const serialPort_t *instance); +uint32_t serialTxBytesFree(const serialPort_t *instance); void serialWriteBuf(serialPort_t *instance, uint8_t *data, int count); uint8_t serialRead(serialPort_t *instance); void serialSetBaudRate(serialPort_t *instance, uint32_t baudRate); void serialSetMode(serialPort_t *instance, portMode_t mode); -bool isSerialTransmitBufferEmpty(serialPort_t *instance); +bool isSerialTransmitBufferEmpty(const serialPort_t *instance); void serialPrint(serialPort_t *instance, const char *str); uint32_t serialGetBaudRate(serialPort_t *instance); diff --git a/src/main/drivers/serial_softserial.c b/src/main/drivers/serial_softserial.c index 03ecf5745..fa04943f4 100644 --- a/src/main/drivers/serial_softserial.c +++ b/src/main/drivers/serial_softserial.c @@ -401,7 +401,7 @@ void onSerialRxPinChange(timerCCHandlerRec_t *cbRec, captureCompare_t capture) } } -uint32_t softSerialRxBytesWaiting(serialPort_t *instance) +uint32_t softSerialRxBytesWaiting(const serialPort_t *instance) { if ((instance->mode & MODE_RX) == 0) { return 0; @@ -412,7 +412,7 @@ uint32_t softSerialRxBytesWaiting(serialPort_t *instance) return (s->port.rxBufferHead - s->port.rxBufferTail) & (s->port.rxBufferSize - 1); } -uint32_t softSerialTxBytesFree(serialPort_t *instance) +uint32_t softSerialTxBytesFree(const serialPort_t *instance) { if ((instance->mode & MODE_TX) == 0) { return 0; @@ -463,7 +463,7 @@ void softSerialSetMode(serialPort_t *instance, portMode_t mode) instance->mode = mode; } -bool isSoftSerialTransmitBufferEmpty(serialPort_t *instance) +bool isSoftSerialTransmitBufferEmpty(const serialPort_t *instance) { return instance->txBufferHead == instance->txBufferTail; } diff --git a/src/main/drivers/serial_softserial.h b/src/main/drivers/serial_softserial.h index eb569c9fa..f831682b1 100644 --- a/src/main/drivers/serial_softserial.h +++ b/src/main/drivers/serial_softserial.h @@ -28,9 +28,9 @@ serialPort_t *openSoftSerial(softSerialPortIndex_e portIndex, serialReceiveCallb // serialPort API void softSerialWriteByte(serialPort_t *instance, uint8_t ch); -uint32_t softSerialRxBytesWaiting(serialPort_t *instance); -uint32_t softSerialTxBytesFree(serialPort_t *instance); +uint32_t softSerialRxBytesWaiting(const serialPort_t *instance); +uint32_t softSerialTxBytesFree(const serialPort_t *instance); uint8_t softSerialReadByte(serialPort_t *instance); void softSerialSetBaudRate(serialPort_t *s, uint32_t baudRate); -bool isSoftSerialTransmitBufferEmpty(serialPort_t *s); +bool isSoftSerialTransmitBufferEmpty(const serialPort_t *s); diff --git a/src/main/drivers/serial_uart.c b/src/main/drivers/serial_uart.c index 88f422f2e..2b6eb8122 100644 --- a/src/main/drivers/serial_uart.c +++ b/src/main/drivers/serial_uart.c @@ -291,9 +291,9 @@ void uartStartTxDMA(uartPort_t *s) #endif } -uint32_t uartTotalRxBytesWaiting(serialPort_t *instance) +uint32_t uartTotalRxBytesWaiting(const serialPort_t *instance) { - uartPort_t *s = (uartPort_t*)instance; + const uartPort_t *s = (const uartPort_t*)instance; #ifdef STM32F4 if (s->rxDMAStream) { uint32_t rxDMAHead = s->rxDMAStream->NDTR; @@ -315,9 +315,9 @@ uint32_t uartTotalRxBytesWaiting(serialPort_t *instance) } } -uint32_t uartTotalTxBytesFree(serialPort_t *instance) +uint32_t uartTotalTxBytesFree(const serialPort_t *instance) { - uartPort_t *s = (uartPort_t*)instance; + const uartPort_t *s = (const uartPort_t*)instance; uint32_t bytesUsed; @@ -358,9 +358,9 @@ uint32_t uartTotalTxBytesFree(serialPort_t *instance) return (s->port.txBufferSize - 1) - bytesUsed; } -bool isUartTransmitBufferEmpty(serialPort_t *instance) +bool isUartTransmitBufferEmpty(const serialPort_t *instance) { - uartPort_t *s = (uartPort_t *)instance; + const uartPort_t *s = (const uartPort_t *)instance; #ifdef STM32F4 if (s->txDMAStream) #else diff --git a/src/main/drivers/serial_uart.h b/src/main/drivers/serial_uart.h index a8c0d64b2..f54310d75 100644 --- a/src/main/drivers/serial_uart.h +++ b/src/main/drivers/serial_uart.h @@ -65,8 +65,8 @@ serialPort_t *uartOpen(USART_TypeDef *USARTx, serialReceiveCallbackPtr callback, // serialPort API void uartWrite(serialPort_t *instance, uint8_t ch); -uint32_t uartTotalRxBytesWaiting(serialPort_t *instance); -uint32_t uartTotalTxBytesFree(serialPort_t *instance); +uint32_t uartTotalRxBytesWaiting(const serialPort_t *instance); +uint32_t uartTotalTxBytesFree(const serialPort_t *instance); uint8_t uartRead(serialPort_t *instance); void uartSetBaudRate(serialPort_t *s, uint32_t baudRate); -bool isUartTransmitBufferEmpty(serialPort_t *s); +bool isUartTransmitBufferEmpty(const serialPort_t *s);