Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

serial: sh-sci: disable DMA for uart_console

As noted in commit 84b40e3b57ee ("serial: 8250: omap: Disable DMA for
console UART"), UART console lines use low-level PIO only access functions
which will conflict with use of the line when DMA is enabled, e.g. when
the console line is also used for systemd messages. So disable DMA
support for UART console lines.

Reported-by: Michael Rodin <mrodin@de.adit-jv.com>
Link: https://patchwork.kernel.org/patch/10929511/
Tested-by: Eugeniu Rosca <erosca@de.adit-jv.com>
Reviewed-by: Simon Horman <horms+renesas@verge.net.au>
Reviewed-by: Wolfram Sang <wsa+renesas@sang-engineering.com>
Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be>
Cc: stable@vger.kernel.org
Signed-off-by: George G. Davis <george_davis@mentor.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

authored by

George G. Davis and committed by
Greg Kroah-Hartman
099506cb 8178eeb3

+7
+7
drivers/tty/serial/sh-sci.c
··· 1557 1557 1558 1558 dev_dbg(port->dev, "%s: port %d\n", __func__, port->line); 1559 1559 1560 + /* 1561 + * DMA on console may interfere with Kernel log messages which use 1562 + * plain putchar(). So, simply don't use it with a console. 1563 + */ 1564 + if (uart_console(port)) 1565 + return; 1566 + 1560 1567 if (!port->dev->of_node) 1561 1568 return; 1562 1569