1
0
Fork 0

ASoC: zx296702-i2s: Fix resource leak when unload module

Use devm_* API to fix leaks in current code.
1. Use devm_kzalloc to fix memory leak for zx_i2s when unload the module.
2. Use devm_snd_soc_register_component to ensure component is unregistered
   when unload the module.

Signed-off-by: Axel Lin <axel.lin@ingics.com>
Reviewed-by: Jun Nie <jun.nie@linaro.org>
Signed-off-by: Mark Brown <broonie@kernel.org>
hifive-unleashed-5.1
Axel Lin 2015-08-29 23:09:30 +08:00 committed by Mark Brown
parent bc0195aad0
commit 534dcd7ea6
1 changed files with 3 additions and 3 deletions

View File

@ -380,7 +380,7 @@ static int zx_i2s_probe(struct platform_device *pdev)
struct zx_i2s_info *zx_i2s;
int ret;
zx_i2s = kzalloc(sizeof(*zx_i2s), GFP_KERNEL);
zx_i2s = devm_kzalloc(&pdev->dev, sizeof(*zx_i2s), GFP_KERNEL);
if (!zx_i2s)
return -ENOMEM;
@ -401,8 +401,8 @@ static int zx_i2s_probe(struct platform_device *pdev)
writel_relaxed(0, zx_i2s->reg_base + ZX_I2S_FIFO_CTRL);
platform_set_drvdata(pdev, zx_i2s);
ret = snd_soc_register_component(&pdev->dev, &zx_i2s_component,
&zx_i2s_dai, 1);
ret = devm_snd_soc_register_component(&pdev->dev, &zx_i2s_component,
&zx_i2s_dai, 1);
if (ret) {
dev_err(&pdev->dev, "Register DAI failed: %d\n", ret);
return ret;