WSL2-Linux-Kernel/drivers/tty
Rickard x Andersson 142a01435c tty: serial: imx: Fix broken RS485
commit 672448ccf9b6a676f96f9352cbf91f4d35f4084a upstream.

When about to transmit the function imx_uart_start_tx is called and in
some RS485 configurations this function will call imx_uart_stop_rx. The
problem is that imx_uart_stop_rx will enable loopback in order to
release the RS485 bus, but when loopback is enabled transmitted data
will just be looped to RX.

This patch fixes the above problem by not enabling loopback when about
to transmit.

This driver now works well when used for RS485 half duplex master
configurations.

Fixes: 79d0224f6b ("tty: serial: imx: Handle RS485 DE signal active high")
Cc: stable <stable@kernel.org>
Signed-off-by: Rickard x Andersson <rickaran@axis.com>
Tested-by: Christoph Niedermaier <cniedermaier@dh-electronics.com>
Link: https://lore.kernel.org/r/20240221115304.509811-1-rickaran@axis.com
Signed-off-by: Christoph Niedermaier <cniedermaier@dh-electronics.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2024-04-10 16:18:47 +02:00
..
hvc hvc/xen: fix event channel handling for secondary consoles 2023-11-28 16:56:28 +00:00
ipwireless
serdev
serial tty: serial: imx: Fix broken RS485 2024-04-10 16:18:47 +02:00
vt vt: fix unicode buffer corruption when deleting characters 2024-04-10 16:18:46 +02:00
Kconfig
Makefile
amiserial.c
ehv_bytechan.c
goldfish.c tty: drivers/tty/, stop using tty_schedule_flip() 2022-07-29 17:25:31 +02:00
mips_ejtag_fdc.c
moxa.c tty: drivers/tty/, stop using tty_schedule_flip() 2022-07-29 17:25:31 +02:00
moxa.h
mxser.c
n_gsm.c tty: n_gsm: fix race condition in status line change on dead connections 2023-11-08 17:26:50 +01:00
n_hdlc.c
n_null.c
n_tty.c tty: fix hang on tty device with no_room set 2023-08-03 10:22:29 +02:00
nozomi.c
pty.c tty: use new tty_insert_flip_string_and_push_buffer() in pty_write() 2022-07-29 17:25:32 +02:00
synclink_gt.c
sysrq.c tty/sysrq: replace smp_processor_id() with get_cpu() 2023-11-28 16:56:27 +00:00
tty.h tty: change tty_write_lock()'s ndelay parameter to bool 2024-01-25 14:52:51 -08:00
tty_audit.c
tty_baudrate.c
tty_buffer.c tty: use new tty_insert_flip_string_and_push_buffer() in pty_write() 2022-07-29 17:25:32 +02:00
tty_io.c usb: cdc-acm: return correct error code on unsupported break 2024-01-25 14:52:52 -08:00
tty_ioctl.c tty: allow TIOCSLCKTRMIOS with CAP_CHECKPOINT_RESTORE 2024-02-23 08:54:51 +01:00
tty_jobctrl.c tty: tty_jobctrl: fix pid memleak in disassociate_ctty() 2023-11-20 11:08:25 +01:00
tty_ldisc.c
tty_ldsem.c
tty_mutex.c
tty_port.c
ttynull.c
vcc.c tty: vcc: Add check for kstrdup() in vcc_probe() 2023-11-28 16:56:19 +00:00