UPSTREAM: xhci: dbctty: disable ECHO flag by default

When /dev/ttyDBC0 device is created then by default ECHO flag
is set for the terminal device. However if data arrives from
a peer before application using /dev/ttyDBC0 applies its set
of terminal flags then the arriving data will be echoed which
might not be desired behavior.

Fixes: 4521f16139 ("xhci: dbctty: split dbc tty driver registration and unregistration functions.")
Cc: stable@kernel.org
Signed-off-by: Łukasz Bartosik <ukaszb@chromium.org>
Signed-off-by: Mathias Nyman <mathias.nyman@linux.intel.com>
Link: https://lore.kernel.org/stable/20250610111802.18742-1-ukaszb%40chromium.org
Link: https://lore.kernel.org/r/20250627144127.3889714-4-mathias.nyman@linux.intel.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
(cherry picked from commit 2b857d69a5e116150639a0c6c39c86cc329939ee)

Bug: 419244002
Bug: 422357008
Test: Connect host and DUT over USB3-A-to-A debug cable
      Start ADB server on host
      Multiple times disconnect/reconnect the debug cable from
      host and after each reconnection issue "adb shell uname -a"
      and verify the command was succesfull

Change-Id: Ieb5c88500814bf1b6c1cbf57bf3f537d54954e3c
Signed-off-by: Łukasz Bartosik <ukaszb@google.com>
This commit is contained in:
Łukasz Bartosik
2025-06-27 17:41:21 +03:00
committed by Greg Kroah-Hartman
parent 8ea40f5243
commit 766ecae19f

View File

@@ -617,6 +617,7 @@ int dbc_tty_init(void)
dbc_tty_driver->type = TTY_DRIVER_TYPE_SERIAL;
dbc_tty_driver->subtype = SERIAL_TYPE_NORMAL;
dbc_tty_driver->init_termios = tty_std_termios;
dbc_tty_driver->init_termios.c_lflag &= ~ECHO;
dbc_tty_driver->init_termios.c_cflag =
B9600 | CS8 | CREAD | HUPCL | CLOCAL;
dbc_tty_driver->init_termios.c_ispeed = 9600;