ARM: pxa: fix error handling in pxa2xx_drv_pcmcia_probe
If pxa2xx_drv_pcmcia_add_one fails, it will go to err1 error path. Add a missing clk_put in the error path. Checking the ret value after the for loop is redundant, it is always false. Thus remove the redundant checking. Signed-off-by: Axel Lin <axel.lin@gmail.com> Acked-by: Eric Miao <eric.y.miao@gmail.com> Acked-by: Marek Vasut <marek.vasut@gmail.com> Signed-off-by: Haojian Zhuang <haojian.zhuang@gmail.com>
This commit is contained in:
parent
be9bac9d33
commit
8fb28231a9
@ -328,21 +328,15 @@ static int pxa2xx_drv_pcmcia_probe(struct platform_device *dev)
|
|||||||
goto err1;
|
goto err1;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (ret) {
|
|
||||||
while (--i >= 0)
|
|
||||||
soc_pcmcia_remove_one(&sinfo->skt[i]);
|
|
||||||
kfree(sinfo);
|
|
||||||
clk_put(clk);
|
|
||||||
} else {
|
|
||||||
pxa2xx_configure_sockets(&dev->dev);
|
pxa2xx_configure_sockets(&dev->dev);
|
||||||
dev_set_drvdata(&dev->dev, sinfo);
|
dev_set_drvdata(&dev->dev, sinfo);
|
||||||
}
|
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
err1:
|
err1:
|
||||||
while (--i >= 0)
|
while (--i >= 0)
|
||||||
soc_pcmcia_remove_one(&sinfo->skt[i]);
|
soc_pcmcia_remove_one(&sinfo->skt[i]);
|
||||||
|
clk_put(clk);
|
||||||
kfree(sinfo);
|
kfree(sinfo);
|
||||||
err0:
|
err0:
|
||||||
return ret;
|
return ret;
|
||||||
|
Loading…
Reference in New Issue
Block a user