static int s5p_i2s_wr_trigger(struct snd_pcm_substream *substream, int cmd, struct snd_soc_dai *dai) { #ifdef CONFIG_S5P_INTERNAL_DMA if (substream->stream == SNDRV_PCM_STREAM_PLAYBACK) s5p_i2s_trigger(substream, cmd, dai); else s3c2412_i2s_trigger(substream, cmd, dai); #else s3c2412_i2s_trigger(substream, cmd, dai); #endif return 0; }
static int s5p_i2s_wr_trigger(struct snd_pcm_substream *substream, int cmd, struct snd_soc_dai *dai) { switch (cmd) { case SNDRV_PCM_TRIGGER_START: case SNDRV_PCM_TRIGGER_RESUME: case SNDRV_PCM_TRIGGER_PAUSE_RELEASE: s5p_i2s_do_resume_stream(substream); break; default: break; } if (s5p_i2s_sec_used(substream)) s5p_i2s_trigger(substream, cmd, dai); else s3c2412_i2s_trigger(substream, cmd, dai); switch (cmd) { case SNDRV_PCM_TRIGGER_STOP: case SNDRV_PCM_TRIGGER_SUSPEND: case SNDRV_PCM_TRIGGER_PAUSE_PUSH: s5p_i2s_do_suspend_stream(substream); break; default: break; } return 0; }