From: Troy Kisky Date: Sun, 3 Oct 2010 21:44:19 +0000 (-0500) Subject: ALSA: ASoc: DaVinci Delay start of ASP to trigger X-Git-Tag: v3.0~832^2~32^2~493 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=94774b28490daf514a4e62fd746315b5089158ff;p=platform%2Fkernel%2Flinux-amlogic.git ALSA: ASoc: DaVinci Delay start of ASP to trigger Since only 4 mainline ASoC codecs support the trigger callback, we cannot rely upon them stopping the frame clock if they are master and must assume it is running even if the sound is paused. Thus we cannot start the ASP until the trigger method. Signed-off-by: Troy Kisky Signed-off-by: Martin Ambrose Signed-off-by: Mark Brown --- diff --git a/sound/soc/davinci/davinci-i2s.c b/sound/soc/davinci/davinci-i2s.c index 9f8b6c5..d46b545 100644 --- a/sound/soc/davinci/davinci-i2s.c +++ b/sound/soc/davinci/davinci-i2s.c @@ -574,10 +574,6 @@ static int davinci_i2s_prepare(struct snd_pcm_substream *substream, struct davinci_mcbsp_dev *dev = snd_soc_dai_get_drvdata(dai); int playback = (substream->stream == SNDRV_PCM_STREAM_PLAYBACK); davinci_mcbsp_stop(dev, playback); - if ((dev->pcr & DAVINCI_MCBSP_PCR_FSXM) == 0) { - /* codec is master */ - davinci_mcbsp_start(dev, substream); - } return 0; } @@ -587,8 +583,6 @@ static int davinci_i2s_trigger(struct snd_pcm_substream *substream, int cmd, struct davinci_mcbsp_dev *dev = snd_soc_dai_get_drvdata(dai); int ret = 0; int playback = (substream->stream == SNDRV_PCM_STREAM_PLAYBACK); - if ((dev->pcr & DAVINCI_MCBSP_PCR_FSXM) == 0) - return 0; /* return if codec is master */ switch (cmd) { case SNDRV_PCM_TRIGGER_START: