ASoC: cs42xx8: Do not use rtd->codec
authorLars-Peter Clausen <lars@metafoo.de>
Mon, 19 May 2014 06:03:03 +0000 (08:03 +0200)
committerMark Brown <broonie@linaro.org>
Mon, 19 May 2014 16:14:02 +0000 (17:14 +0100)
rtd->codec does not necessarily point to the CODEC instance for which the
callback was called (e.g. for CODEC<->CODEC or multi-CODEC links). Use
dai->codec instead.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Acked-by: Brian Austin <brian.austin@cirrus.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
sound/soc/codecs/cs42xx8.c

index 8502032..a25bc60 100644 (file)
@@ -248,8 +248,7 @@ static int cs42xx8_hw_params(struct snd_pcm_substream *substream,
                             struct snd_pcm_hw_params *params,
                             struct snd_soc_dai *dai)
 {
-       struct snd_soc_pcm_runtime *rtd = substream->private_data;
-       struct snd_soc_codec *codec = rtd->codec;
+       struct snd_soc_codec *codec = dai->codec;
        struct cs42xx8_priv *cs42xx8 = snd_soc_codec_get_drvdata(codec);
        bool tx = substream->stream == SNDRV_PCM_STREAM_PLAYBACK;
        u32 ratio = cs42xx8->sysclk / params_rate(params);