[alsa-devel] [PATCH 4/5 v2] fbdev: sh_mobile_hdmi: add new label for sound error path
Kuninori Morimoto
kuninori.morimoto.gx at renesas.com
Thu Sep 9 04:48:17 CEST 2010
This patch solve below report from Guennadi
> /* External video parameter settings */
> static void hdmi_external_video_param(struct sh_hdmi *hdmi)
> {
> @@ -804,6 +862,11 @@ static int __init sh_hdmi_probe(struct platform_device *pdev)
> return -ENOMEM;
> }
>
> + ret = snd_soc_register_codec(&pdev->dev,
> + &soc_codec_dev_sh_hdmi, &sh_hdmi_dai, 1);
> + if (ret < 0)
> + goto egetclk;
> +
> hdmi->dev = &pdev->dev;
>
> hdmi->hdmi_clk = clk_get(&pdev->dev, "ick");
NAK. This breaks the error path and has to be fixed. Firstly, please, use
a new label like "esndreg," secondly, you have to add
clk_disable(hdmi->hdmi_clk);
erate:
clk_put(hdmi->hdmi_clk);
egetclk:
+ snd_soc_unregister_codec(&pdev->dev);
+esndreg:
mutex_destroy(&hdmi->mutex);
kfree(hdmi);
Reported-by: Guennadi Liakhovetski <g.liakhovetski at gmx.de>
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx at renesas.com>
---
v1 -> v2
o add Guennadi's mail on log area
drivers/video/sh_mobile_hdmi.c | 4 +++-
1 files changed, 3 insertions(+), 1 deletions(-)
diff --git a/drivers/video/sh_mobile_hdmi.c b/drivers/video/sh_mobile_hdmi.c
index a2cb492..ef989d9 100644
--- a/drivers/video/sh_mobile_hdmi.c
+++ b/drivers/video/sh_mobile_hdmi.c
@@ -967,7 +967,7 @@ static int __init sh_hdmi_probe(struct platform_device *pdev)
ret = snd_soc_register_codec(&pdev->dev,
&soc_codec_dev_sh_hdmi, &sh_hdmi_dai, 1);
if (ret < 0)
- goto egetclk;
+ goto esndreg;
hdmi->dev = &pdev->dev;
@@ -1054,6 +1054,8 @@ eclkenable:
erate:
clk_put(hdmi->hdmi_clk);
egetclk:
+ snd_soc_unregister_codec(&pdev->dev);
+esndreg:
kfree(hdmi);
return ret;
--
1.7.0.4
More information about the Alsa-devel
mailing list