aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--sound/soc/dwc/designware_i2s.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/sound/soc/dwc/designware_i2s.c b/sound/soc/dwc/designware_i2s.c
index d3bdc6890eb5..a6327cc086c0 100644
--- a/sound/soc/dwc/designware_i2s.c
+++ b/sound/soc/dwc/designware_i2s.c
@@ -476,7 +476,7 @@ static int dw_i2s_probe(struct platform_device *pdev)
476 if (IS_ERR(dev->clk)) 476 if (IS_ERR(dev->clk))
477 return PTR_ERR(dev->clk); 477 return PTR_ERR(dev->clk);
478 478
479 ret = clk_enable(dev->clk); 479 ret = clk_prepare_enable(dev->clk);
480 if (ret < 0) 480 if (ret < 0)
481 return ret; 481 return ret;
482 482
@@ -491,13 +491,16 @@ static int dw_i2s_probe(struct platform_device *pdev)
491 return 0; 491 return 0;
492 492
493err_clk_disable: 493err_clk_disable:
494 clk_disable(dev->clk); 494 clk_disable_unprepare(dev->clk);
495 return ret; 495 return ret;
496} 496}
497 497
498static int dw_i2s_remove(struct platform_device *pdev) 498static int dw_i2s_remove(struct platform_device *pdev)
499{ 499{
500 struct dw_i2s_dev *dev = dev_get_drvdata(&pdev->dev);
501
500 snd_soc_unregister_component(&pdev->dev); 502 snd_soc_unregister_component(&pdev->dev);
503 clk_disable_unprepare(dev->clk);
501 504
502 return 0; 505 return 0;
503} 506}