Lines Matching refs:substream
92 static int snd_cs5535audio_playback_open(struct snd_pcm_substream *substream) in snd_cs5535audio_playback_open() argument
95 struct cs5535audio *cs5535au = snd_pcm_substream_chip(substream); in snd_cs5535audio_playback_open()
96 struct snd_pcm_runtime *runtime = substream->runtime; in snd_cs5535audio_playback_open()
101 cs5535au->playback_substream = substream; in snd_cs5535audio_playback_open()
110 static int snd_cs5535audio_playback_close(struct snd_pcm_substream *substream) in snd_cs5535audio_playback_close() argument
120 struct snd_pcm_substream *substream, in cs5535audio_build_dma_packets() argument
145 addr = (u32) substream->runtime->dma_addr; in cs5535audio_build_dma_packets()
164 dma->substream = substream; in cs5535audio_build_dma_packets()
238 struct snd_pcm_substream *substream) in cs5535audio_clear_dma_packets() argument
242 dma->substream = NULL; in cs5535audio_clear_dma_packets()
245 static int snd_cs5535audio_hw_params(struct snd_pcm_substream *substream, in snd_cs5535audio_hw_params() argument
248 struct cs5535audio *cs5535au = snd_pcm_substream_chip(substream); in snd_cs5535audio_hw_params()
249 struct cs5535audio_dma *dma = substream->runtime->private_data; in snd_cs5535audio_hw_params()
252 err = snd_pcm_lib_malloc_pages(substream, in snd_cs5535audio_hw_params()
256 dma->buf_addr = substream->runtime->dma_addr; in snd_cs5535audio_hw_params()
259 err = cs5535audio_build_dma_packets(cs5535au, dma, substream, in snd_cs5535audio_hw_params()
268 static int snd_cs5535audio_hw_free(struct snd_pcm_substream *substream) in snd_cs5535audio_hw_free() argument
270 struct cs5535audio *cs5535au = snd_pcm_substream_chip(substream); in snd_cs5535audio_hw_free()
271 struct cs5535audio_dma *dma = substream->runtime->private_data; in snd_cs5535audio_hw_free()
274 if (substream == cs5535au->playback_substream) in snd_cs5535audio_hw_free()
282 cs5535audio_clear_dma_packets(cs5535au, dma, substream); in snd_cs5535audio_hw_free()
283 return snd_pcm_lib_free_pages(substream); in snd_cs5535audio_hw_free()
286 static int snd_cs5535audio_playback_prepare(struct snd_pcm_substream *substream) in snd_cs5535audio_playback_prepare() argument
288 struct cs5535audio *cs5535au = snd_pcm_substream_chip(substream); in snd_cs5535audio_playback_prepare()
290 substream->runtime->rate); in snd_cs5535audio_playback_prepare()
293 static int snd_cs5535audio_trigger(struct snd_pcm_substream *substream, int cmd) in snd_cs5535audio_trigger() argument
295 struct cs5535audio *cs5535au = snd_pcm_substream_chip(substream); in snd_cs5535audio_trigger()
296 struct cs5535audio_dma *dma = substream->runtime->private_data; in snd_cs5535audio_trigger()
329 *substream) in snd_cs5535audio_pcm_pointer()
331 struct cs5535audio *cs5535au = snd_pcm_substream_chip(substream); in snd_cs5535audio_pcm_pointer()
335 dma = substream->runtime->private_data; in snd_cs5535audio_pcm_pointer()
348 return bytes_to_frames(substream->runtime, curdma); in snd_cs5535audio_pcm_pointer()
351 static int snd_cs5535audio_capture_open(struct snd_pcm_substream *substream) in snd_cs5535audio_capture_open() argument
354 struct cs5535audio *cs5535au = snd_pcm_substream_chip(substream); in snd_cs5535audio_capture_open()
355 struct snd_pcm_runtime *runtime = substream->runtime; in snd_cs5535audio_capture_open()
360 cs5535au->capture_substream = substream; in snd_cs5535audio_capture_open()
369 static int snd_cs5535audio_capture_close(struct snd_pcm_substream *substream) in snd_cs5535audio_capture_close() argument
371 struct cs5535audio *cs5535au = snd_pcm_substream_chip(substream); in snd_cs5535audio_capture_close()
376 static int snd_cs5535audio_capture_prepare(struct snd_pcm_substream *substream) in snd_cs5535audio_capture_prepare() argument
378 struct cs5535audio *cs5535au = snd_pcm_substream_chip(substream); in snd_cs5535audio_capture_prepare()
380 substream->runtime->rate); in snd_cs5535audio_capture_prepare()