From: Greg Kroah-Hartman Date: Wed, 19 Jun 2024 09:55:33 +0000 (+0200) Subject: 6.6-stable patches X-Git-Tag: v6.1.95~38 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=525dd1918a6e5156c0d6b7107cb40a714513aa0c;p=thirdparty%2Fkernel%2Fstable-queue.git 6.6-stable patches added patches: serial-8250_pxa-configure-tx_loadsz-to-match-fifo-irq-level.patch --- diff --git a/queue-6.6/serial-8250_pxa-configure-tx_loadsz-to-match-fifo-irq-level.patch b/queue-6.6/serial-8250_pxa-configure-tx_loadsz-to-match-fifo-irq-level.patch new file mode 100644 index 00000000000..f1d87a26e2d --- /dev/null +++ b/queue-6.6/serial-8250_pxa-configure-tx_loadsz-to-match-fifo-irq-level.patch @@ -0,0 +1,35 @@ +From 5208e7ced520a813b4f4774451fbac4e517e78b2 Mon Sep 17 00:00:00 2001 +From: Doug Brown +Date: Sun, 19 May 2024 12:19:30 -0700 +Subject: serial: 8250_pxa: Configure tx_loadsz to match FIFO IRQ level + +From: Doug Brown + +commit 5208e7ced520a813b4f4774451fbac4e517e78b2 upstream. + +The FIFO is 64 bytes, but the FCR is configured to fire the TX interrupt +when the FIFO is half empty (bit 3 = 0). Thus, we should only write 32 +bytes when a TX interrupt occurs. + +This fixes a problem observed on the PXA168 that dropped a bunch of TX +bytes during large transmissions. + +Fixes: ab28f51c77cd ("serial: rewrite pxa2xx-uart to use 8250_core") +Signed-off-by: Doug Brown +Link: https://lore.kernel.org/r/20240519191929.122202-1-doug@schmorgal.com +Cc: stable +Signed-off-by: Greg Kroah-Hartman +--- + drivers/tty/serial/8250/8250_pxa.c | 1 + + 1 file changed, 1 insertion(+) + +--- a/drivers/tty/serial/8250/8250_pxa.c ++++ b/drivers/tty/serial/8250/8250_pxa.c +@@ -124,6 +124,7 @@ static int serial_pxa_probe(struct platf + uart.port.regshift = 2; + uart.port.irq = irq; + uart.port.fifosize = 64; ++ uart.tx_loadsz = 32; + uart.port.flags = UPF_IOREMAP | UPF_SKIP_TEST | UPF_FIXED_TYPE; + uart.port.dev = &pdev->dev; + uart.port.uartclk = clk_get_rate(data->clk); diff --git a/queue-6.6/series b/queue-6.6/series index 142dd5a8129..5454979fc60 100644 --- a/queue-6.6/series +++ b/queue-6.6/series @@ -252,3 +252,4 @@ swiotlb-extend-buffer-pre-padding-to-alloc_align_mask-if-necessary.patch nilfs2-fix-potential-kernel-bug-due-to-lack-of-writeback-flag-waiting.patch tick-nohz_full-don-t-abuse-smp_call_function_single-in-tick_setup_device.patch mm-huge_memory-don-t-unpoison-huge_zero_folio.patch +serial-8250_pxa-configure-tx_loadsz-to-match-fifo-irq-level.patch