Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 994bd0a0 authored by Dilip Kota's avatar Dilip Kota
Browse files

msm_serial_hs_lite: Handle Tx request during System Suspend



A corner case is occuring, that performing un-clock register
access and leading to Kernel Crash
Corner Case:
When system is in suspend state, Tx operation is getting called
from the client driver by a fflush system call.
To overcome this case, added a conditional check in the driver
while Tx operation. If system is in suspend state, return back
immediately.

CRs-Fixed: 570113
Change-Id: Idab06cbb49610dd36146fd22714ef20c63000ba5
Signed-off-by: default avatarDilip Kota <c_dkota@codeaurora.org>
parent 76ccdc74
Loading
Loading
Loading
Loading
+4 −0
Original line number Diff line number Diff line
@@ -522,6 +522,10 @@ static void msm_hsl_start_tx(struct uart_port *port)
{
	struct msm_hsl_port *msm_hsl_port = UART_TO_MSM(port);

	if (port->suspended) {
		pr_err("%s: System is in Suspend state\n", __func__);
		return;
	}
	msm_hsl_port->imr |= UARTDM_ISR_TXLEV_BMSK;
	msm_hsl_write(port, msm_hsl_port->imr,
		regmap[msm_hsl_port->ver_id][UARTDM_IMR]);