tty: xilinx_uartps: Check the clk_enable return value

Check the clk_enable return value.
If clocks are not enabled the register accesses could hang the
system so error out instead.

Signed-off-by: Shubhrajyoti Datta <shubhrajyoti.datta@xilinx.com>
Link: https://lore.kernel.org/r/20220729114748.18332-8-shubhrajyoti.datta@xilinx.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
Shubhrajyoti Datta 2022-07-29 17:17:48 +05:30 committed by Greg Kroah-Hartman
parent a17fa1216c
commit a000bafa61

View File

@ -1420,9 +1420,17 @@ static int __maybe_unused cdns_runtime_resume(struct device *dev)
{
struct uart_port *port = dev_get_drvdata(dev);
struct cdns_uart *cdns_uart = port->private_data;
int ret;
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;
}
return 0;
};