From: Shubhrajyoti Datta Date: Tue, 9 May 2017 06:20:32 +0000 (+0530) Subject: serial: xilinx_uartps: Fix the error path X-Git-Tag: v4.13-rc1~183^2~47 X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=d653c43aefedd3d22d3d2222c10f5b6ae2dfbe13;p=karo-tx-linux.git serial: xilinx_uartps: Fix the error path Fix the runtime calls in the error path. Signed-off-by: Shubhrajyoti Datta Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/tty/serial/xilinx_uartps.c b/drivers/tty/serial/xilinx_uartps.c index c0539950f8d7..b5b77ba3ac65 100644 --- a/drivers/tty/serial/xilinx_uartps.c +++ b/drivers/tty/serial/xilinx_uartps.c @@ -1587,20 +1587,21 @@ static int cdns_uart_probe(struct platform_device *pdev) if (rc) { dev_err(&pdev->dev, "uart_add_one_port() failed; err=%i\n", rc); - goto err_out_notif_unreg; + goto err_out_pm_disable; } return 0; +err_out_pm_disable: + pm_runtime_disable(&pdev->dev); + pm_runtime_set_suspended(&pdev->dev); + pm_runtime_dont_use_autosuspend(&pdev->dev); err_out_notif_unreg: #ifdef CONFIG_COMMON_CLK clk_notifier_unregister(cdns_uart_data->uartclk, &cdns_uart_data->clk_rate_change_nb); #endif err_out_clk_disable: - pm_runtime_disable(&pdev->dev); - pm_runtime_set_suspended(&pdev->dev); - pm_runtime_dont_use_autosuspend(&pdev->dev); clk_disable_unprepare(cdns_uart_data->uartclk); err_out_clk_dis_pclk: clk_disable_unprepare(cdns_uart_data->pclk);