aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/layerscape/patches-5.4/819-uart-0006-tty-serial-fsl_lpuart-enable-loopback-mode.patch
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/layerscape/patches-5.4/819-uart-0006-tty-serial-fsl_lpuart-enable-loopback-mode.patch')
-rw-r--r--target/linux/layerscape/patches-5.4/819-uart-0006-tty-serial-fsl_lpuart-enable-loopback-mode.patch29
1 files changed, 29 insertions, 0 deletions
diff --git a/target/linux/layerscape/patches-5.4/819-uart-0006-tty-serial-fsl_lpuart-enable-loopback-mode.patch b/target/linux/layerscape/patches-5.4/819-uart-0006-tty-serial-fsl_lpuart-enable-loopback-mode.patch
new file mode 100644
index 0000000000..f643b27dda
--- /dev/null
+++ b/target/linux/layerscape/patches-5.4/819-uart-0006-tty-serial-fsl_lpuart-enable-loopback-mode.patch
@@ -0,0 +1,29 @@
+From 4dc6f2b9d454099445b8bc3a4a6328761335ce4d Mon Sep 17 00:00:00 2001
+From: Fugang Duan <fugang.duan@nxp.com>
+Date: Wed, 11 Sep 2019 16:23:25 +0800
+Subject: [PATCH] tty: serial: fsl_lpuart: enable loopback mode
+
+Enable lpuart32 loopback mode.
+
+Signed-off-by: Fugang Duan <fugang.duan@nxp.com>
+---
+ drivers/tty/serial/fsl_lpuart.c | 8 ++++++++
+ 1 file changed, 8 insertions(+)
+
+--- a/drivers/tty/serial/fsl_lpuart.c
++++ b/drivers/tty/serial/fsl_lpuart.c
+@@ -1464,6 +1464,14 @@ static void lpuart32_set_mctrl(struct ua
+ temp |= UARTMODIR_TXCTSE;
+
+ lpuart32_write(port, temp, UARTMODIR);
++
++ temp = lpuart32_read(port, UARTCTRL);
++ if (mctrl & TIOCM_LOOP)
++ temp |= UARTCTRL_LOOPS;
++ else
++ temp &= ~UARTCTRL_LOOPS;
++
++ lpuart32_write(port, temp, UARTCTRL);
+ }
+
+ static void lpuart_break_ctl(struct uart_port *port, int break_state)