diff --git a/[refs] b/[refs] index 777124ff8ad8..790c29850fe9 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 2e1463922a35584c863f71d4021e1e71f76eaed0 +refs/heads/master: 9f322ad064f9210e7d472dfe77e702274d5c9dba diff --git a/trunk/drivers/serial/imx.c b/trunk/drivers/serial/imx.c index e6c2ba26dcbb..cbd4f3224643 100644 --- a/trunk/drivers/serial/imx.c +++ b/trunk/drivers/serial/imx.c @@ -1157,10 +1157,15 @@ static int serial_imx_probe(struct platform_device *pdev) goto clkput; } - uart_add_one_port(&imx_reg, &sport->port); + ret = uart_add_one_port(&imx_reg, &sport->port); + if (ret) + goto deinit; platform_set_drvdata(pdev, &sport->port); return 0; +deinit: + if (pdata->exit) + pdata->exit(pdev); clkput: clk_put(sport->clk); clk_disable(sport->clk);