Re: [PATCH 02/13] serial: linflexuart: Clean SLEEP bit in LINCR1 after suspend
From: Larisa Ileana Grigore
Date: Wed Feb 18 2026 - 07:09:32 EST
On 2/16/2026 10:22 PM, Frank Li wrote:
On Mon, Feb 16, 2026 at 04:01:54PM +0100, Larisa Grigore wrote:
When coming back from reset, we need to re-initialize LINCR1 register.
SLEEP bit should be cleared, otherwise we can't enter INITM mode.
serial: linflexuart: Clean SLEEP bit in LINCR1 at linflex_set_termios()
Re-initialize LINCR1 register (Clear the SLEEP bit) at
linflex_set_termios(), otherwise the controller cannot enter INITM mode
after suspend/resume.
Frank
Thanks!
Fixes: 09864c1cdf5c ("tty: serial: Add linflexuart driver for S32V234")
Signed-off-by: Larisa Grigore <larisa.grigore@xxxxxxxxxxx>
---
drivers/tty/serial/fsl_linflexuart.c | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/drivers/tty/serial/fsl_linflexuart.c b/drivers/tty/serial/fsl_linflexuart.c
index 5a410e2d56ac..016011fd8760 100644
--- a/drivers/tty/serial/fsl_linflexuart.c
+++ b/drivers/tty/serial/fsl_linflexuart.c
@@ -413,8 +413,7 @@ linflex_set_termios(struct uart_port *port, struct ktermios *termios,
old_cr = cr;
/* Enter initialization mode by setting INIT bit */
- cr1 = readl(port->membase + LINCR1);
- cr1 |= LINFLEXD_LINCR1_INIT;
+ cr1 = LINFLEXD_LINCR1_INIT | LINFLEXD_LINCR1_MME;
writel(cr1, port->membase + LINCR1);
/* wait for init mode entry */
--
2.47.0