Lines Matching refs:substream
91 hw = &pi->substream->runtime->hw; in i2sbus_pcm_open()
196 err = snd_pcm_hw_constraint_integer(pi->substream->runtime, in i2sbus_pcm_open()
204 err = cii->codec->open(cii, pi->substream); in i2sbus_pcm_open()
213 pi->substream); in i2sbus_pcm_open()
242 tmp = cii->codec->close(cii, pi->substream); in i2sbus_pcm_close()
248 pi->substream = NULL; in i2sbus_pcm_close()
298 static int i2sbus_hw_params(struct snd_pcm_substream *substream, in i2sbus_hw_params() argument
301 return snd_pcm_lib_malloc_pages(substream, params_buffer_bytes(params)); in i2sbus_hw_params()
304 static inline int i2sbus_hw_free(struct snd_pcm_substream *substream, int in) in i2sbus_hw_free() argument
306 struct i2sbus_dev *i2sdev = snd_pcm_substream_chip(substream); in i2sbus_hw_free()
312 snd_pcm_lib_free_pages(substream); in i2sbus_hw_free()
316 static int i2sbus_playback_hw_free(struct snd_pcm_substream *substream) in i2sbus_playback_hw_free() argument
318 return i2sbus_hw_free(substream, 0); in i2sbus_playback_hw_free()
321 static int i2sbus_record_hw_free(struct snd_pcm_substream *substream) in i2sbus_record_hw_free() argument
323 return i2sbus_hw_free(substream, 1); in i2sbus_record_hw_free()
356 if (!pi->substream || !pi->substream->runtime) { in i2sbus_pcm_prepare()
361 runtime = pi->substream->runtime; in i2sbus_pcm_prepare()
373 periodsize = snd_pcm_lib_period_bytes(pi->substream); in i2sbus_pcm_prepare()
374 nperiods = pi->substream->runtime->periods; in i2sbus_pcm_prepare()
468 err = cii->codec->prepare(cii, &bi, pi->substream); in i2sbus_pcm_prepare()
559 cii->codec->start(cii, pi->substream); in i2sbus_pcm_trigger()
608 cii->codec->stop(cii, pi->substream); in i2sbus_pcm_trigger()
630 if (fc >= pi->substream->runtime->buffer_size) in i2sbus_pcm_pointer()
631 fc %= pi->substream->runtime->buffer_size; in i2sbus_pcm_pointer()
650 runtime = pi->substream->runtime; in handle_interrupt()
703 snd_pcm_period_elapsed(pi->substream); in handle_interrupt()
722 static int i2sbus_playback_open(struct snd_pcm_substream *substream) in i2sbus_playback_open() argument
724 struct i2sbus_dev *i2sdev = snd_pcm_substream_chip(substream); in i2sbus_playback_open()
728 i2sdev->out.substream = substream; in i2sbus_playback_open()
732 static int i2sbus_playback_close(struct snd_pcm_substream *substream) in i2sbus_playback_close() argument
734 struct i2sbus_dev *i2sdev = snd_pcm_substream_chip(substream); in i2sbus_playback_close()
739 if (i2sdev->out.substream != substream) in i2sbus_playback_close()
743 i2sdev->out.substream = NULL; in i2sbus_playback_close()
747 static int i2sbus_playback_prepare(struct snd_pcm_substream *substream) in i2sbus_playback_prepare() argument
749 struct i2sbus_dev *i2sdev = snd_pcm_substream_chip(substream); in i2sbus_playback_prepare()
753 if (i2sdev->out.substream != substream) in i2sbus_playback_prepare()
758 static int i2sbus_playback_trigger(struct snd_pcm_substream *substream, int cmd) in i2sbus_playback_trigger() argument
760 struct i2sbus_dev *i2sdev = snd_pcm_substream_chip(substream); in i2sbus_playback_trigger()
764 if (i2sdev->out.substream != substream) in i2sbus_playback_trigger()
770 *substream) in i2sbus_playback_pointer()
772 struct i2sbus_dev *i2sdev = snd_pcm_substream_chip(substream); in i2sbus_playback_pointer()
776 if (i2sdev->out.substream != substream) in i2sbus_playback_pointer()
792 static int i2sbus_record_open(struct snd_pcm_substream *substream) in i2sbus_record_open() argument
794 struct i2sbus_dev *i2sdev = snd_pcm_substream_chip(substream); in i2sbus_record_open()
798 i2sdev->in.substream = substream; in i2sbus_record_open()
802 static int i2sbus_record_close(struct snd_pcm_substream *substream) in i2sbus_record_close() argument
804 struct i2sbus_dev *i2sdev = snd_pcm_substream_chip(substream); in i2sbus_record_close()
809 if (i2sdev->in.substream != substream) in i2sbus_record_close()
813 i2sdev->in.substream = NULL; in i2sbus_record_close()
817 static int i2sbus_record_prepare(struct snd_pcm_substream *substream) in i2sbus_record_prepare() argument
819 struct i2sbus_dev *i2sdev = snd_pcm_substream_chip(substream); in i2sbus_record_prepare()
823 if (i2sdev->in.substream != substream) in i2sbus_record_prepare()
828 static int i2sbus_record_trigger(struct snd_pcm_substream *substream, int cmd) in i2sbus_record_trigger() argument
830 struct i2sbus_dev *i2sdev = snd_pcm_substream_chip(substream); in i2sbus_record_trigger()
834 if (i2sdev->in.substream != substream) in i2sbus_record_trigger()
840 *substream) in i2sbus_record_pointer()
842 struct i2sbus_dev *i2sdev = snd_pcm_substream_chip(substream); in i2sbus_record_pointer()
846 if (i2sdev->in.substream != substream) in i2sbus_record_pointer()