summaryrefslogtreecommitdiff
path: root/tools/perf/scripts/python/task-analyzer.py
diff options
context:
space:
mode:
authorAnup Kulkarni <anup.kulkarni@oss.qualcomm.com>2026-03-10 16:11:55 +0530
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2026-03-12 15:25:44 +0100
commit0b1837c04d2335ec50b9a55b0282dcde7bc12439 (patch)
tree5988cec0d485bf0f303b397a73997c6602447e82 /tools/perf/scripts/python/task-analyzer.py
parent74e0c9f0528bcd597cb1299a027d7be27d1c27d9 (diff)
serial: qcom-geni: Fix RTS behavior with flow control
When userspace enables flow control (CRTSCTS), the driver deasserts RTS even when the receive buffer has space. This prevents the peer device from transmitting, causing communication to stall. The root cause is that the driver unconditionally uses manual RTS control regardless of flow control mode. When CRTSCTS is set, the hardware should automatically manage RTS based on buffer status, but the driver overrides this by setting manual control. Fix this by introducing port->manual_flow flag. In set_termios(), disable manual flow when CRTSCTS is set. In set_mctrl(), only assert SE_UART_MANUAL_RFR when manual_flow is active. Verified by enabling and disabling hardware flow control with stty. Signed-off-by: Anup Kulkarni <anup.kulkarni@oss.qualcomm.com> Link: https://patch.msgid.link/20260310104155.339010-1-anup.kulkarni@oss.qualcomm.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'tools/perf/scripts/python/task-analyzer.py')
0 files changed, 0 insertions, 0 deletions