diff mbox

[2/6] ASoC: samsung: i2s: Fix rclk_srcrate handling

Message ID 20180307170120.13943-1-s.nawrocki@samsung.com (mailing list archive)
State Not Applicable
Headers show

Commit Message

As the RCLK clock may be updated through the common clk API before each
snd_soc_dai_ops::trigger call, it is not enough to update i2s->rclk_srcrate
only once after it has been initially set to 0. To avoid wrong PSR values
we always get the RCLK frequency from the CLK_I2S_RCLK_SRC, when this clock
is available.

Fixes: e1417fdf3011 "ASoC: samsung: i2s: Ensure the RCLK rate is properly determined"
Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
---
 sound/soc/samsung/i2s.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
diff mbox

Patch

diff --git a/sound/soc/samsung/i2s.c b/sound/soc/samsung/i2s.c
index b6407fbabdd1..f914ed45db7d 100644
--- a/sound/soc/samsung/i2s.c
+++ b/sound/soc/samsung/i2s.c
@@ -887,7 +887,7 @@  static int config_setup(struct i2s_dai *i2s)
 	if (!(i2s->quirks & QUIRK_NO_MUXPSR)) {
 		struct clk *rclksrc = i2s->clk_table[CLK_I2S_RCLK_SRC];
 
-		if (i2s->rclk_srcrate == 0 && rclksrc && !IS_ERR(rclksrc))
+		if (rclksrc && !IS_ERR(rclksrc))
 			i2s->rclk_srcrate = clk_get_rate(rclksrc);
 
 		psr = i2s->rclk_srcrate / i2s->frmclk / rfs;