[media] soc_camera: Use devm_kzalloc function

devm_kzalloc() has been used to simplify error handling.
While at it, the soc_camera_device_register function has been moved to
save a few lines of code and a variable.

Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org>
[g.liakhovetski@gmx.de: remove a superfluous empty line]
Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
This commit is contained in:
Sachin Kamat 2012-09-05 08:25:26 -03:00 committed by Mauro Carvalho Chehab
parent ec0341b3b7
commit 0224936935
1 changed files with 2 additions and 14 deletions

View File

@ -1529,12 +1529,11 @@ static int __devinit soc_camera_pdrv_probe(struct platform_device *pdev)
{
struct soc_camera_link *icl = pdev->dev.platform_data;
struct soc_camera_device *icd;
int ret;
if (!icl)
return -EINVAL;
icd = kzalloc(sizeof(*icd), GFP_KERNEL);
icd = devm_kzalloc(&pdev->dev, sizeof(*icd), GFP_KERNEL);
if (!icd)
return -ENOMEM;
@ -1543,19 +1542,10 @@ static int __devinit soc_camera_pdrv_probe(struct platform_device *pdev)
icd->pdev = &pdev->dev;
platform_set_drvdata(pdev, icd);
ret = soc_camera_device_register(icd);
if (ret < 0)
goto escdevreg;
icd->user_width = DEFAULT_WIDTH;
icd->user_height = DEFAULT_HEIGHT;
return 0;
escdevreg:
kfree(icd);
return ret;
return soc_camera_device_register(icd);
}
/*
@ -1572,8 +1562,6 @@ static int __devexit soc_camera_pdrv_remove(struct platform_device *pdev)
list_del(&icd->list);
kfree(icd);
return 0;
}