summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorArvind Yadav2017-07-25 12:15:37 +0200
committerMark Brown2017-07-26 14:01:42 +0200
commit260ea95cc027500ee5086e2ef568b8c915e66fb5 (patch)
tree0f0446e9ea3a0b4fa8414bf819b46dbb46491f83
parentLinux v4.13-rc1 (diff)
downloadkernel-qcow2-linux-260ea95cc027500ee5086e2ef568b8c915e66fb5.tar.gz
kernel-qcow2-linux-260ea95cc027500ee5086e2ef568b8c915e66fb5.tar.xz
kernel-qcow2-linux-260ea95cc027500ee5086e2ef568b8c915e66fb5.zip
ASoC: atmel: ac97c: 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>
-rw-r--r--sound/atmel/ac97c.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/sound/atmel/ac97c.c b/sound/atmel/ac97c.c
index 9d2c9d9af688..52b0522fda20 100644
--- a/sound/atmel/ac97c.c
+++ b/sound/atmel/ac97c.c
@@ -783,7 +783,9 @@ static int atmel_ac97c_probe(struct platform_device *pdev)
dev_dbg(&pdev->dev, "no peripheral clock\n");
return PTR_ERR(pclk);
}
- clk_prepare_enable(pclk);
+ retval = clk_prepare_enable(pclk);
+ if (retval)
+ return retval;
retval = snd_card_new(&pdev->dev, SNDRV_DEFAULT_IDX1,
SNDRV_DEFAULT_STR1, THIS_MODULE,
@@ -897,9 +899,9 @@ static int atmel_ac97c_resume(struct device *pdev)
{
struct snd_card *card = dev_get_drvdata(pdev);
struct atmel_ac97c *chip = card->private_data;
+ int ret = clk_prepare_enable(chip->pclk);
- clk_prepare_enable(chip->pclk);
- return 0;
+ return ret;
}
static SIMPLE_DEV_PM_OPS(atmel_ac97c_pm, atmel_ac97c_suspend, atmel_ac97c_resume);