WSL2-Linux-Kernel/drivers/tty
Udit Kumar 500bfbabab serial: 8250_omap: Fix Errata i2310 with RX FIFO level check
commit c128a1b0523b685c8856ddc0ac0e1caef1fdeee5 upstream.

Errata i2310[0] says, Erroneous timeout can be triggered,
if this Erroneous interrupt is not cleared then it may leads
to storm of interrupts.

Commit 9d141c1e6157 ("serial: 8250_omap: Implementation of Errata i2310")
which added the workaround but missed ensuring RX FIFO is really empty
before applying the errata workaround as recommended in the errata text.
Fix this by adding back check for UART_OMAP_RX_LVL to be 0 for
workaround to take effect.

[0] https://www.ti.com/lit/pdf/sprz536 page 23

Fixes: 9d141c1e6157 ("serial: 8250_omap: Implementation of Errata i2310")
Cc: stable@vger.kernel.org
Reported-by: Vignesh Raghavendra <vigneshr@ti.com>
Closes: https://lore.kernel.org/all/e96d0c55-0b12-4cbf-9d23-48963543de49@ti.com/
Signed-off-by: Udit Kumar <u-kumar1@ti.com>
Link: https://lore.kernel.org/r/20240625160725.2102194-1-u-kumar1@ti.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2024-07-05 09:14:52 +02:00
..
hvc hvc/xen: fix event channel handling for secondary consoles 2023-11-28 16:56:28 +00:00
ipwireless
serdev
serial serial: 8250_omap: Fix Errata i2310 with RX FIFO level check 2024-07-05 09:14:52 +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
mips_ejtag_fdc.c
moxa.c
moxa.h
mxser.c
n_gsm.c tty: n_gsm: fix missing receive state reset after mode switch 2024-06-16 13:39:11 +02:00
n_hdlc.c
n_null.c
n_tty.c
nozomi.c
pty.c
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_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_ldisc.c
tty_ldsem.c
tty_mutex.c
tty_port.c
ttynull.c
vcc.c