summaryrefslogtreecommitdiff
path: root/components/drivers/serial/serial.c
diff options
context:
space:
mode:
Diffstat (limited to 'components/drivers/serial/serial.c')
-rw-r--r--components/drivers/serial/serial.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/components/drivers/serial/serial.c b/components/drivers/serial/serial.c
index 2736ceed66..76298ea153 100644
--- a/components/drivers/serial/serial.c
+++ b/components/drivers/serial/serial.c
@@ -38,6 +38,7 @@
#ifdef RT_USING_POSIX
#include <dfs_posix.h>
#include <dfs_poll.h>
+#include <sys/ioctl.h>
#ifdef RT_USING_POSIX_TERMIOS
#include <posix_termios.h>
@@ -954,9 +955,7 @@ static void _tc_flush(struct rt_serial_device *serial, int queue)
{
RT_ASSERT(RT_NULL != rx_fifo);
level = rt_hw_interrupt_disable();
- rt_memset(rx_fifo->buffer, 0, serial->config.bufsz);
- rx_fifo->put_index = 0;
- rx_fifo->get_index = 0;
+ rx_fifo->get_index = rx_fifo->put_index;
rx_fifo->is_full = RT_FALSE;
rt_hw_interrupt_enable(level);
}