ASoC: sun4i-spdif: Handle return value of clk_prepare_enable.

clk_prepare_enable() can fail here and we must check its return value.

Signed-off-by: Arvind Yadav <arvind.yadav.cs@gmail.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
This commit is contained in:
Arvind Yadav 2017-07-25 15:45:18 +05:30 committed by Mark Brown
parent 72bfa2117b
commit 3643e91726
1 changed files with 8 additions and 3 deletions

View File

@ -458,11 +458,16 @@ static int sun4i_spdif_runtime_suspend(struct device *dev)
static int sun4i_spdif_runtime_resume(struct device *dev) static int sun4i_spdif_runtime_resume(struct device *dev)
{ {
struct sun4i_spdif_dev *host = dev_get_drvdata(dev); struct sun4i_spdif_dev *host = dev_get_drvdata(dev);
int ret;
clk_prepare_enable(host->spdif_clk); ret = clk_prepare_enable(host->spdif_clk);
clk_prepare_enable(host->apb_clk); if (ret)
return ret;
ret = clk_prepare_enable(host->apb_clk);
if (ret)
clk_disable_unprepare(host->spdif_clk);
return 0; return ret;
} }
static int sun4i_spdif_probe(struct platform_device *pdev) static int sun4i_spdif_probe(struct platform_device *pdev)