Skip to content

Commit d04d414

Browse files
committed
pbdrv/uart: const correctness for write buffer arg.
We don't need to be able to edit the write buffer in any UART implementation. Making it const prevents some unnecesary casts in upcoming ev3 btstack uart block implementation.
1 parent 2488153 commit d04d414

File tree

8 files changed

+17
-16
lines changed

8 files changed

+17
-16
lines changed

lib/pbio/drv/uart/uart_ev3.c

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,7 @@ struct _pbdrv_uart_dev_t {
6262
/** The current position in read_buf. */
6363
uint8_t read_pos;
6464
/** The buffer passed to the write function. */
65-
uint8_t *write_buf;
65+
const uint8_t *write_buf;
6666
/** The length of write_buf in bytes. */
6767
uint8_t write_length;
6868
/** The current position in write_buf. */
@@ -131,7 +131,7 @@ pbio_error_t pbdrv_uart_read(pbio_os_state_t *state, pbdrv_uart_dev_t *uart, uin
131131
PBIO_OS_ASYNC_END(PBIO_SUCCESS);
132132
}
133133

134-
static pbio_error_t pbdrv_uart_write_pru(pbio_os_state_t *state, pbdrv_uart_dev_t *uart, uint8_t *msg, uint8_t length, uint32_t timeout) {
134+
static pbio_error_t pbdrv_uart_write_pru(pbio_os_state_t *state, pbdrv_uart_dev_t *uart, const uint8_t *msg, uint8_t length, uint32_t timeout) {
135135

136136
const pbdrv_uart_ev3_platform_data_t *pdata = uart->pdata;
137137

@@ -178,7 +178,7 @@ static pbio_error_t pbdrv_uart_write_pru(pbio_os_state_t *state, pbdrv_uart_dev_
178178
PBIO_OS_ASYNC_END(PBIO_SUCCESS);
179179
}
180180

181-
pbio_error_t pbdrv_uart_write_hw(pbio_os_state_t *state, pbdrv_uart_dev_t *uart, uint8_t *msg, uint8_t length, uint32_t timeout) {
181+
pbio_error_t pbdrv_uart_write_hw(pbio_os_state_t *state, pbdrv_uart_dev_t *uart, const uint8_t *msg, uint8_t length, uint32_t timeout) {
182182

183183
const pbdrv_uart_ev3_platform_data_t *pdata = uart->pdata;
184184

@@ -240,7 +240,7 @@ pbio_error_t pbdrv_uart_write_hw(pbio_os_state_t *state, pbdrv_uart_dev_t *uart,
240240
PBIO_OS_ASYNC_END(PBIO_SUCCESS);
241241
}
242242

243-
pbio_error_t pbdrv_uart_write(pbio_os_state_t *state, pbdrv_uart_dev_t *uart, uint8_t *msg, uint8_t length, uint32_t timeout) {
243+
pbio_error_t pbdrv_uart_write(pbio_os_state_t *state, pbdrv_uart_dev_t *uart, const uint8_t *msg, uint8_t length, uint32_t timeout) {
244244
const pbdrv_uart_ev3_platform_data_t *pdata = uart->pdata;
245245

246246
if (pdata->uart_kind == EV3_UART_HW) {

lib/pbio/drv/uart/uart_ev3_pru.c

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@
3232
#include <stdio.h>
3333
#include <string.h>
3434
#include <stdbool.h>
35+
#include <stdint.h>
3536

3637
#include <errno.h>
3738

@@ -481,7 +482,7 @@ int32_t pbdrv_uart_ev3_pru_get_break_state(uint8_t line) {
481482
return 0;
482483
}
483484

484-
int32_t pbdrv_uart_ev3_pru_write_bytes(uint8_t line, uint8_t *pdata, int32_t size) {
485+
int32_t pbdrv_uart_ev3_pru_write_bytes(uint8_t line, const uint8_t *pdata, int32_t size) {
485486
omapl_pru_suart_t *suart = &suartdevs[line];
486487

487488
if (suart->write_busy || size == 0) {

lib/pbio/drv/uart/uart_ev3_pru.h

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,10 +8,10 @@ int pbdrv_uart_ev3_pru_load_firmware(uint8_t *firmware_data, uint32_t firmware_s
88
int pbdrv_uart_ev3_pru_activate(uint8_t line);
99

1010
void pbdrv_uart_ev3_pru_handle_irq_data(uint8_t line);
11-
void pbdrv_uart_ev3_pru_set_baudrate(uint8_t line, unsigned int baud);
11+
void pbdrv_uart_ev3_pru_set_baudrate(uint8_t line, uint32_t baud);
1212

13-
int pbdrv_uart_ev3_pru_read_bytes(uint8_t line, unsigned char *pdata, int size);
14-
int pbdrv_uart_ev3_pru_write_bytes(uint8_t line, unsigned char *pdata, int size);
13+
int pbdrv_uart_ev3_pru_read_bytes(uint8_t line, uint8_t *pdata, int32_t size);
14+
int pbdrv_uart_ev3_pru_write_bytes(uint8_t line, const uint8_t *pdata, int32_t size);
1515
bool pbdrv_uart_ev3_pru_can_write(uint8_t line);
1616

1717
#endif // _INTERNAL_PBDRV_UART_EV3_PRU_H_

lib/pbio/drv/uart/uart_stm32f0.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ struct _pbdrv_uart_dev_t {
3535
uint8_t *rx_buf;
3636
uint8_t rx_buf_size;
3737
uint8_t rx_buf_index;
38-
uint8_t *tx_buf;
38+
const uint8_t *tx_buf;
3939
uint8_t tx_buf_size;
4040
uint8_t tx_buf_index;
4141
pbio_os_timer_t rx_timer;
@@ -102,7 +102,7 @@ pbio_error_t pbdrv_uart_read(pbio_os_state_t *state, pbdrv_uart_dev_t *uart, uin
102102
PBIO_OS_ASYNC_END(PBIO_SUCCESS);
103103
}
104104

105-
pbio_error_t pbdrv_uart_write(pbio_os_state_t *state, pbdrv_uart_dev_t *uart, uint8_t *msg, uint8_t length, uint32_t timeout) {
105+
pbio_error_t pbdrv_uart_write(pbio_os_state_t *state, pbdrv_uart_dev_t *uart, const uint8_t *msg, uint8_t length, uint32_t timeout) {
106106

107107
PBIO_OS_ASYNC_BEGIN(state);
108108

lib/pbio/drv/uart/uart_stm32f4_ll_irq.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ struct _pbdrv_uart_dev_t {
4343
/** The current position in read_buf. */
4444
uint8_t read_pos;
4545
/** The buffer of the ongoing write function. */
46-
uint8_t *write_buf;
46+
const uint8_t *write_buf;
4747
/** The length of write_buf in bytes. */
4848
uint8_t write_length;
4949
/** The current position in write_buf. */
@@ -108,7 +108,7 @@ pbio_error_t pbdrv_uart_read(pbio_os_state_t *state, pbdrv_uart_dev_t *uart, uin
108108
PBIO_OS_ASYNC_END(PBIO_SUCCESS);
109109
}
110110

111-
pbio_error_t pbdrv_uart_write(pbio_os_state_t *state, pbdrv_uart_dev_t *uart, uint8_t *msg, uint8_t length, uint32_t timeout) {
111+
pbio_error_t pbdrv_uart_write(pbio_os_state_t *state, pbdrv_uart_dev_t *uart, const uint8_t *msg, uint8_t length, uint32_t timeout) {
112112

113113
PBIO_OS_ASYNC_BEGIN(state);
114114

lib/pbio/drv/uart/uart_stm32l4_ll_dma.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -227,7 +227,7 @@ pbio_error_t pbdrv_uart_read(pbio_os_state_t *state, pbdrv_uart_dev_t *uart, uin
227227
PBIO_OS_ASYNC_END(PBIO_SUCCESS);
228228
}
229229

230-
pbio_error_t pbdrv_uart_write(pbio_os_state_t *state, pbdrv_uart_dev_t *uart, uint8_t *msg, uint8_t length, uint32_t timeout) {
230+
pbio_error_t pbdrv_uart_write(pbio_os_state_t *state, pbdrv_uart_dev_t *uart, const uint8_t *msg, uint8_t length, uint32_t timeout) {
231231

232232
const pbdrv_uart_stm32l4_ll_dma_platform_data_t *pdata = uart->pdata;
233233

lib/pbio/include/pbdrv/uart.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ pbio_error_t pbdrv_uart_read(pbio_os_state_t *state, pbdrv_uart_dev_t *uart_dev,
5858
*
5959
* @return The error code.
6060
*/
61-
pbio_error_t pbdrv_uart_write(pbio_os_state_t *state, pbdrv_uart_dev_t *uart, uint8_t *msg, uint8_t length, uint32_t timeout);
61+
pbio_error_t pbdrv_uart_write(pbio_os_state_t *state, pbdrv_uart_dev_t *uart, const uint8_t *msg, uint8_t length, uint32_t timeout);
6262

6363
#else // PBDRV_CONFIG_UART
6464

lib/pbio/test/src/test_lump.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ struct _pbdrv_uart_dev_t {
3434
uint8_t *rx_msg;
3535
uint8_t rx_msg_length;
3636
pbio_error_t rx_msg_result;
37-
uint8_t *tx_msg;
37+
const uint8_t *tx_msg;
3838
pbio_os_timer_t tx_timer;
3939
uint8_t tx_msg_length;
4040
pbio_error_t tx_msg_result;
@@ -1134,7 +1134,7 @@ pbio_error_t pbdrv_uart_read(pbio_os_state_t *state, pbdrv_uart_dev_t *uart_dev,
11341134
PBIO_OS_ASYNC_END(uart_dev->rx_msg_result);
11351135
}
11361136

1137-
pbio_error_t pbdrv_uart_write(pbio_os_state_t *state, pbdrv_uart_dev_t *uart_dev, uint8_t *msg, uint8_t length, uint32_t timeout) {
1137+
pbio_error_t pbdrv_uart_write(pbio_os_state_t *state, pbdrv_uart_dev_t *uart_dev, const uint8_t *msg, uint8_t length, uint32_t timeout) {
11381138

11391139
PBIO_OS_ASYNC_BEGIN(state);
11401140

0 commit comments

Comments
 (0)