@@ -588,7 +588,7 @@ uart_t *uartBegin(
588
588
UART_MUTEX_LOCK ();
589
589
//User may just want to change some parameters, such as baudrate, data length, parity, stop bits or pins
590
590
if (uart -> _baudrate != baudrate ) {
591
- if ( ESP_OK != uart_set_baudrate ( uart_nr , baudrate )) {
591
+ if ! uartSetBaudRate ( uart , baudrate )) {
592
592
log_e ("UART%d changing baudrate failed." , uart_nr );
593
593
retCode = false;
594
594
} else {
@@ -972,10 +972,11 @@ void uartFlushTxOnly(uart_t *uart, bool txOnly) {
972
972
UART_MUTEX_UNLOCK ();
973
973
}
974
974
975
- void uartSetBaudRate (uart_t * uart , uint32_t baud_rate ) {
975
+ bool uartSetBaudRate (uart_t * uart , uint32_t baud_rate ) {
976
976
if (uart == NULL ) {
977
- return ;
977
+ return false ;
978
978
}
979
+ bool retCode = true;
979
980
UART_MUTEX_LOCK ();
980
981
#if SOC_UART_SUPPORT_XTAL_CLK // ESP32-S3, ESP32-C3, ESP32-C5, ESP32-C6, ESP32-H2 and ESP32-P4
981
982
soc_module_clk_t newClkSrc = UART_SCLK_XTAL ;
@@ -996,9 +997,11 @@ void uartSetBaudRate(uart_t *uart, uint32_t baud_rate) {
996
997
log_v ("Setting UART%d baud rate to %d." , uart -> num , baud_rate );
997
998
uart -> _baudrate = baud_rate ;
998
999
} else {
1000
+ retCode = false;
999
1001
log_e ("Setting UART%d baud rate to %d has failed." , uart -> num , baud_rate );
1000
1002
}
1001
1003
UART_MUTEX_UNLOCK ();
1004
+ return retCode ;
1002
1005
}
1003
1006
1004
1007
uint32_t uartGetBaudRate (uart_t * uart ) {
0 commit comments