Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 8400ddf4 authored by Maxime Ripard's avatar Maxime Ripard Committed by Mark Brown
Browse files

ASoC: sun4i-codec: pass through clk_set_rate error



Commit 1fb34b48 ('ASoC: sun4i: Implement MIC1 capture') added back some
code that disregards the clk_set_rate error code and always returns
-EINVAL. Fix that and return the code in order to have more clue about
what's going on.

Signed-off-by: default avatarMaxime Ripard <maxime.ripard@free-electrons.com>
Signed-off-by: default avatarMark Brown <broonie@kernel.org>
parent 0837d878
Loading
Loading
Loading
Loading
+4 −3
Original line number Diff line number Diff line
@@ -411,14 +411,15 @@ static int sun4i_codec_hw_params(struct snd_pcm_substream *substream,
	struct snd_soc_pcm_runtime *rtd = substream->private_data;
	struct sun4i_codec *scodec = snd_soc_card_get_drvdata(rtd->card);
	unsigned long clk_freq;
	int hwrate;
	int ret, hwrate;

	clk_freq = sun4i_codec_get_mod_freq(params);
	if (!clk_freq)
		return -EINVAL;

	if (clk_set_rate(scodec->clk_module, clk_freq))
		return -EINVAL;
	ret = clk_set_rate(scodec->clk_module, clk_freq);
	if (ret)
		return ret;

	hwrate = sun4i_codec_get_hw_rate(params);
	if (hwrate < 0)