Commit 957e8c04 authored by Shubhrajyoti Datta's avatar Shubhrajyoti Datta Committed by Greg Kroah-Hartman

tty: xilinx_uartps: Check clk_enable return value

If clocks are not enabled the register access may hang the system.
Check for the clock enable return value and bail out if not enabled.
Signed-off-by: default avatarShubhrajyoti Datta <shubhrajyoti.datta@xilinx.com>
Link: https://lore.kernel.org/r/20220729114748.18332-2-shubhrajyoti.datta@xilinx.comSigned-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 568035b0
......@@ -1329,12 +1329,20 @@ static int cdns_uart_resume(struct device *device)
unsigned long flags;
u32 ctrl_reg;
int may_wake;
int ret;
may_wake = device_may_wakeup(device);
if (console_suspend_enabled && uart_console(port) && !may_wake) {
clk_enable(cdns_uart->pclk);
clk_enable(cdns_uart->uartclk);
ret = clk_enable(cdns_uart->pclk);
if (ret)
return ret;
ret = clk_enable(cdns_uart->uartclk);
if (ret) {
clk_disable(cdns_uart->pclk);
return ret;
}
spin_lock_irqsave(&port->lock, flags);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment