mirror of
https://github.com/espressif/esp-idf.git
synced 2024-10-05 20:47:46 -04:00
hal: workaround for UART FIFO read on ESP32 with -O2 optimization
This commit is contained in:
parent
da1ed49a65
commit
8db219c292
@ -167,6 +167,9 @@ FORCE_INLINE_ATTR void uart_ll_read_rxfifo(uart_dev_t *hw, uint8_t *buf, uint32_
|
|||||||
uint32_t fifo_addr = (hw == &UART0) ? UART_FIFO_REG(0) : (hw == &UART1) ? UART_FIFO_REG(1) : UART_FIFO_REG(2);
|
uint32_t fifo_addr = (hw == &UART0) ? UART_FIFO_REG(0) : (hw == &UART1) ? UART_FIFO_REG(1) : UART_FIFO_REG(2);
|
||||||
for(uint32_t i = 0; i < rd_len; i++) {
|
for(uint32_t i = 0; i < rd_len; i++) {
|
||||||
buf[i] = READ_PERI_REG(fifo_addr);
|
buf[i] = READ_PERI_REG(fifo_addr);
|
||||||
|
#ifdef CONFIG_COMPILER_OPTIMIZATION_PERF
|
||||||
|
__asm__ __volatile__("nop");
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user