diff --git a/lib/pbio/drv/uart/uart_ev3.c b/lib/pbio/drv/uart/uart_ev3.c index 5069d7636..adedc316c 100644 --- a/lib/pbio/drv/uart/uart_ev3.c +++ b/lib/pbio/drv/uart/uart_ev3.c @@ -62,7 +62,7 @@ struct _pbdrv_uart_dev_t { /** The current position in read_buf. */ uint8_t read_pos; /** The buffer passed to the write function. */ - uint8_t *write_buf; + const uint8_t *write_buf; /** The length of write_buf in bytes. */ uint8_t write_length; /** 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 PBIO_OS_ASYNC_END(PBIO_SUCCESS); } -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) { +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) { const pbdrv_uart_ev3_platform_data_t *pdata = uart->pdata; @@ -178,7 +178,7 @@ static pbio_error_t pbdrv_uart_write_pru(pbio_os_state_t *state, pbdrv_uart_dev_ PBIO_OS_ASYNC_END(PBIO_SUCCESS); } -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) { +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) { const pbdrv_uart_ev3_platform_data_t *pdata = uart->pdata; @@ -240,7 +240,7 @@ pbio_error_t pbdrv_uart_write_hw(pbio_os_state_t *state, pbdrv_uart_dev_t *uart, PBIO_OS_ASYNC_END(PBIO_SUCCESS); } -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) { +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) { const pbdrv_uart_ev3_platform_data_t *pdata = uart->pdata; if (pdata->uart_kind == EV3_UART_HW) { diff --git a/lib/pbio/drv/uart/uart_ev3_pru.c b/lib/pbio/drv/uart/uart_ev3_pru.c index d3884fc2c..5b7e92f6a 100644 --- a/lib/pbio/drv/uart/uart_ev3_pru.c +++ b/lib/pbio/drv/uart/uart_ev3_pru.c @@ -32,6 +32,7 @@ #include #include #include +#include #include @@ -481,7 +482,7 @@ int32_t pbdrv_uart_ev3_pru_get_break_state(uint8_t line) { return 0; } -int32_t pbdrv_uart_ev3_pru_write_bytes(uint8_t line, uint8_t *pdata, int32_t size) { +int32_t pbdrv_uart_ev3_pru_write_bytes(uint8_t line, const uint8_t *pdata, int32_t size) { omapl_pru_suart_t *suart = &suartdevs[line]; if (suart->write_busy || size == 0) { diff --git a/lib/pbio/drv/uart/uart_ev3_pru.h b/lib/pbio/drv/uart/uart_ev3_pru.h index 367b22bb1..c4573d6b7 100644 --- a/lib/pbio/drv/uart/uart_ev3_pru.h +++ b/lib/pbio/drv/uart/uart_ev3_pru.h @@ -8,10 +8,10 @@ int pbdrv_uart_ev3_pru_load_firmware(uint8_t *firmware_data, uint32_t firmware_s int pbdrv_uart_ev3_pru_activate(uint8_t line); void pbdrv_uart_ev3_pru_handle_irq_data(uint8_t line); -void pbdrv_uart_ev3_pru_set_baudrate(uint8_t line, unsigned int baud); +void pbdrv_uart_ev3_pru_set_baudrate(uint8_t line, uint32_t baud); -int pbdrv_uart_ev3_pru_read_bytes(uint8_t line, unsigned char *pdata, int size); -int pbdrv_uart_ev3_pru_write_bytes(uint8_t line, unsigned char *pdata, int size); +int pbdrv_uart_ev3_pru_read_bytes(uint8_t line, uint8_t *pdata, int32_t size); +int pbdrv_uart_ev3_pru_write_bytes(uint8_t line, const uint8_t *pdata, int32_t size); bool pbdrv_uart_ev3_pru_can_write(uint8_t line); #endif // _INTERNAL_PBDRV_UART_EV3_PRU_H_ diff --git a/lib/pbio/drv/uart/uart_stm32f0.c b/lib/pbio/drv/uart/uart_stm32f0.c index 98cf00236..12b9f5d80 100644 --- a/lib/pbio/drv/uart/uart_stm32f0.c +++ b/lib/pbio/drv/uart/uart_stm32f0.c @@ -35,7 +35,7 @@ struct _pbdrv_uart_dev_t { uint8_t *rx_buf; uint8_t rx_buf_size; uint8_t rx_buf_index; - uint8_t *tx_buf; + const uint8_t *tx_buf; uint8_t tx_buf_size; uint8_t tx_buf_index; 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 PBIO_OS_ASYNC_END(PBIO_SUCCESS); } -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) { +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) { PBIO_OS_ASYNC_BEGIN(state); diff --git a/lib/pbio/drv/uart/uart_stm32f4_ll_irq.c b/lib/pbio/drv/uart/uart_stm32f4_ll_irq.c index 88fd75c69..f52720817 100644 --- a/lib/pbio/drv/uart/uart_stm32f4_ll_irq.c +++ b/lib/pbio/drv/uart/uart_stm32f4_ll_irq.c @@ -43,7 +43,7 @@ struct _pbdrv_uart_dev_t { /** The current position in read_buf. */ uint8_t read_pos; /** The buffer of the ongoing write function. */ - uint8_t *write_buf; + const uint8_t *write_buf; /** The length of write_buf in bytes. */ uint8_t write_length; /** 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 PBIO_OS_ASYNC_END(PBIO_SUCCESS); } -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) { +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) { PBIO_OS_ASYNC_BEGIN(state); diff --git a/lib/pbio/drv/uart/uart_stm32l4_ll_dma.c b/lib/pbio/drv/uart/uart_stm32l4_ll_dma.c index 74bb8c850..d9fbf4050 100644 --- a/lib/pbio/drv/uart/uart_stm32l4_ll_dma.c +++ b/lib/pbio/drv/uart/uart_stm32l4_ll_dma.c @@ -227,7 +227,7 @@ pbio_error_t pbdrv_uart_read(pbio_os_state_t *state, pbdrv_uart_dev_t *uart, uin PBIO_OS_ASYNC_END(PBIO_SUCCESS); } -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) { +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) { const pbdrv_uart_stm32l4_ll_dma_platform_data_t *pdata = uart->pdata; diff --git a/lib/pbio/include/pbdrv/uart.h b/lib/pbio/include/pbdrv/uart.h index 751972ffb..581bed46a 100644 --- a/lib/pbio/include/pbdrv/uart.h +++ b/lib/pbio/include/pbdrv/uart.h @@ -58,7 +58,7 @@ pbio_error_t pbdrv_uart_read(pbio_os_state_t *state, pbdrv_uart_dev_t *uart_dev, * * @return The error code. */ -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); +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); #else // PBDRV_CONFIG_UART diff --git a/lib/pbio/test/src/test_lump.c b/lib/pbio/test/src/test_lump.c index 15e59060b..2b98873e5 100644 --- a/lib/pbio/test/src/test_lump.c +++ b/lib/pbio/test/src/test_lump.c @@ -34,7 +34,7 @@ struct _pbdrv_uart_dev_t { uint8_t *rx_msg; uint8_t rx_msg_length; pbio_error_t rx_msg_result; - uint8_t *tx_msg; + const uint8_t *tx_msg; pbio_os_timer_t tx_timer; uint8_t tx_msg_length; 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, PBIO_OS_ASYNC_END(uart_dev->rx_msg_result); } -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) { +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) { PBIO_OS_ASYNC_BEGIN(state);