MLK-10406 ARM: imx: check the clk_set_rate() return value
authorFugang Duan <b38611@freescale.com>
Wed, 11 Mar 2015 11:07:42 +0000 (19:07 +0800)
committerNitin Garg <nitin.garg@nxp.com>
Mon, 19 Mar 2018 19:47:28 +0000 (14:47 -0500)
Add return value check for clk_set_rate() to avoid set clock
rate fail.

Signed-off-by: Fugang Duan <B38611@freescale.com>
(cherry picked from commit: bcd9d743ef534cf58d2d007e6333270be12c9f06)

drivers/tty/serial/imx.c

index 85fd2b5..918bc56 100644 (file)
@@ -2136,8 +2136,13 @@ static int serial_imx_probe(struct platform_device *pdev)
        }
 
        sport->port.uartclk = clk_get_rate(sport->clk_per);
-       if (sport->port.uartclk > IMX_MODULE_MAX_CLK_RATE)
-               clk_set_rate(sport->clk_per, IMX_MODULE_MAX_CLK_RATE);
+       if (sport->port.uartclk > IMX_MODULE_MAX_CLK_RATE) {
+               ret = clk_set_rate(sport->clk_per, IMX_MODULE_MAX_CLK_RATE);
+               if (ret < 0) {
+                       dev_err(&pdev->dev, "clk_set_rate() failed\n");
+                       return ret;
+               }
+       }
        sport->port.uartclk = clk_get_rate(sport->clk_per);
 
        /* For register access, we only need to enable the ipg clock. */