diff options
author | Arvind Yadav <arvind.yadav.cs@gmail.com> | 2017-07-25 06:14:30 -0400 |
---|---|---|
committer | Mark Brown <broonie@kernel.org> | 2017-07-26 08:00:24 -0400 |
commit | a7ad9a88300c813a945793e9dae84ceaf7809141 (patch) | |
tree | 1eed9705ebc28f55d044534cc74ab9d873de7ec5 | |
parent | 8698475a94d0b7eb21efaa346d507dc4932f2032 (diff) |
ASoC: samsung: pcm: 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>
Reviewed-by: Krzysztof Kozlowski <krzk@kernel.org>
Signed-off-by: Mark Brown <broonie@kernel.org>
-rw-r--r-- | sound/soc/samsung/pcm.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/sound/soc/samsung/pcm.c b/sound/soc/samsung/pcm.c index d50a6377c23d..37f95eee1558 100644 --- a/sound/soc/samsung/pcm.c +++ b/sound/soc/samsung/pcm.c | |||
@@ -522,7 +522,9 @@ static int s3c_pcm_dev_probe(struct platform_device *pdev) | |||
522 | dev_err(&pdev->dev, "failed to get audio-bus clock\n"); | 522 | dev_err(&pdev->dev, "failed to get audio-bus clock\n"); |
523 | return PTR_ERR(pcm->cclk); | 523 | return PTR_ERR(pcm->cclk); |
524 | } | 524 | } |
525 | clk_prepare_enable(pcm->cclk); | 525 | ret = clk_prepare_enable(pcm->cclk); |
526 | if (ret) | ||
527 | return ret; | ||
526 | 528 | ||
527 | /* record our pcm structure for later use in the callbacks */ | 529 | /* record our pcm structure for later use in the callbacks */ |
528 | dev_set_drvdata(&pdev->dev, pcm); | 530 | dev_set_drvdata(&pdev->dev, pcm); |
@@ -533,7 +535,9 @@ static int s3c_pcm_dev_probe(struct platform_device *pdev) | |||
533 | ret = PTR_ERR(pcm->pclk); | 535 | ret = PTR_ERR(pcm->pclk); |
534 | goto err_dis_cclk; | 536 | goto err_dis_cclk; |
535 | } | 537 | } |
536 | clk_prepare_enable(pcm->pclk); | 538 | ret = clk_prepare_enable(pcm->pclk); |
539 | if (ret) | ||
540 | goto err_dis_cclk; | ||
537 | 541 | ||
538 | s3c_pcm_stereo_in[pdev->id].addr = mem_res->start + S3C_PCM_RXFIFO; | 542 | s3c_pcm_stereo_in[pdev->id].addr = mem_res->start + S3C_PCM_RXFIFO; |
539 | s3c_pcm_stereo_out[pdev->id].addr = mem_res->start + S3C_PCM_TXFIFO; | 543 | s3c_pcm_stereo_out[pdev->id].addr = mem_res->start + S3C_PCM_TXFIFO; |