瀏覽代碼

[smart/tty] skip configure of rt_serial on tty open (#9152)

Skip configure on open since all configs are copied from the current
configuration on device. So we don't bother to set it back to device
again.

Changes:

- test and skip configuration on open() of tty device

Signed-off-by: Shell <smokewood@qq.com>
Shell 1 年之前
父節點
當前提交
3f6960b7f5
共有 1 個文件被更改,包括 10 次插入0 次删除
  1. 10 0
      components/drivers/serial/serial_tty.c

+ 10 - 0
components/drivers/serial/serial_tty.c

@@ -298,6 +298,16 @@ static int serial_tty_param(struct lwp_tty *tp, struct termios *t)
     RT_ASSERT(softc);
     serial = softc->parent;
 
+    if (!tty_opened(tp))
+    {
+        /**
+         * skip configure on open since all configs are copied from the current
+         * configuration on device. So we don't bother to set it back to device
+         * again.
+         */
+        return RT_EOK;
+    }
+
     cfsetispeed(t, t->__c_ispeed);
     return rt_device_control(&(serial->parent), TCSETS, t);
 }