ASoC: imx-wm8962: Fix codec_clk cleanup
authorDaniel Baluta <daniel.baluta@nxp.com>
Tue, 28 Mar 2017 08:58:52 +0000 (11:58 +0300)
committerMark Brown <broonie@kernel.org>
Wed, 29 Mar 2017 11:50:12 +0000 (12:50 +0100)
Resource managed devm_clk_get only works with platform's device dev.

Reported-by: Nicolin Chen <nicoleotsuka@gmail.com>
Signed-off-by: Daniel Baluta <daniel.baluta@nxp.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/fsl/imx-wm8962.c

index 3d894d9123e03e4cbfb9e482c61ad5d202885fc0..52659faa2eb9ccad4e108f341ce9fea02afbebff 100644 (file)
@@ -231,7 +231,7 @@ static int imx_wm8962_probe(struct platform_device *pdev)
                goto fail;
        }
 
-       codec_clk = devm_clk_get(&codec_dev->dev, NULL);
+       codec_clk = clk_get(&codec_dev->dev, NULL);
        if (IS_ERR(codec_clk)) {
                ret = PTR_ERR(codec_clk);
                dev_err(&codec_dev->dev, "failed to get codec clk: %d\n", ret);
@@ -239,6 +239,7 @@ static int imx_wm8962_probe(struct platform_device *pdev)
        }
 
        data->clk_frequency = clk_get_rate(codec_clk);
+       clk_put(codec_clk);
 
        data->dai.name = "HiFi";
        data->dai.stream_name = "HiFi";