Bladeren bron

update serial

Meco Man 4 jaren geleden
bovenliggende
commit
a940728162
1 gewijzigde bestanden met toevoegingen van 11 en 9 verwijderingen
  1. 11 9
      components/drivers/serial/serial.c

+ 11 - 9
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 */