summaryrefslogtreecommitdiff
path: root/components/drivers
diff options
context:
space:
mode:
authorMeco Man <[email protected]>2021-01-01 17:07:11 +0800
committerMeco Man <[email protected]>2021-01-01 17:07:11 +0800
commita94072816293c4be014a7055abdc92870ccdb620 (patch)
tree05af40b0f5f10afccb3f8da8e1cc9a4e3a718c43 /components/drivers
parent11fc8d27c1c955fbaedfb3efd14fb72122c1cdbf (diff)
update serial
Diffstat (limited to 'components/drivers')
-rw-r--r--components/drivers/serial/serial.c20
1 files changed, 11 insertions, 9 deletions
diff --git a/components/drivers/serial/serial.c b/components/drivers/serial/serial.c
index 3b8edf74d5..28c5f1076b 100644
--- a/components/drivers/serial/serial.c
+++ b/components/drivers/serial/serial.c
@@ -133,7 +133,7 @@ static int serial_fops_read(struct dfs_fd *fd, void *buf, size_t count)
do
{
- size = rt_device_read(device, -1, buf, count);
+ size = rt_device_read(device, -1, buf, count);
if (size <= 0)
{
if (fd->flags & O_NONBLOCK)
@@ -1105,6 +1105,16 @@ static rt_err_t rt_serial_control(struct rt_device *dev,
break;
case TCXONC:
break;
+ case TIOCSWINSZ:
+ {
+ struct winsize* p_winsize;
+
+ p_winsize = (struct winsize*)args;
+ rt_enter_critical();
+ rt_kprintf("\x1b[8;%d;%dt", p_winsize->ws_col, p_winsize->ws_row);
+ rt_exit_critical();
+ }
+ break;
#endif /*RT_USING_POSIX_TERMIOS*/
case FIONREAD:
{
@@ -1118,14 +1128,6 @@ static rt_err_t rt_serial_control(struct rt_device *dev,
*(rt_size_t *)args = recved;
}
break;
- case TIOCSWINSZ:
- {
- struct winsize* p_winsize;
-
- p_winsize = (struct winsize*)args;
- rt_kprintf("\x1b[8;%d;%dt", p_winsize->ws_col, p_winsize->ws_row);
- }
- break;
#endif /*RT_USING_POSIX*/
default :
/* control device */