esp8266/uart: Add uart_flush() function.
diff --git a/esp8266/uart.c b/esp8266/uart.c
index aa3d368..942c397 100644
--- a/esp8266/uart.c
+++ b/esp8266/uart.c
@@ -105,6 +105,15 @@
WRITE_PERI_REG(UART_FIFO(uart), TxChar);
}
+void uart_flush(uint8 uart) {
+ while (true) {
+ uint32 fifo_cnt = READ_PERI_REG(UART_STATUS(uart)) & (UART_TXFIFO_CNT<<UART_TXFIFO_CNT_S);
+ if ((fifo_cnt >> UART_TXFIFO_CNT_S & UART_TXFIFO_CNT) == 0) {
+ break;
+ }
+ }
+}
+
/******************************************************************************
* FunctionName : uart1_write_char
* Description : Internal used function