Lines Matching refs:bebob
109 pcm_init_hw_params(struct snd_bebob *bebob, in pcm_init_hw_params() argument
126 s = &bebob->tx_stream; in pcm_init_hw_params()
127 formations = bebob->tx_stream_formations; in pcm_init_hw_params()
130 s = &bebob->rx_stream; in pcm_init_hw_params()
131 formations = bebob->rx_stream_formations; in pcm_init_hw_params()
157 struct snd_bebob *bebob = substream->private_data; in pcm_open() local
158 const struct snd_bebob_rate_spec *spec = bebob->spec->rate; in pcm_open()
163 err = snd_bebob_stream_lock_try(bebob); in pcm_open()
167 err = pcm_init_hw_params(bebob, substream); in pcm_open()
171 err = snd_bebob_stream_get_clock_src(bebob, &src); in pcm_open()
180 amdtp_stream_pcm_running(&bebob->tx_stream) || in pcm_open()
181 amdtp_stream_pcm_running(&bebob->rx_stream)) { in pcm_open()
182 err = spec->get(bebob, &sampling_rate); in pcm_open()
184 dev_err(&bebob->unit->device, in pcm_open()
197 snd_bebob_stream_lock_release(bebob); in pcm_open()
204 struct snd_bebob *bebob = substream->private_data; in pcm_close() local
205 snd_bebob_stream_lock_release(bebob); in pcm_close()
213 struct snd_bebob *bebob = substream->private_data; in pcm_capture_hw_params() local
222 atomic_inc(&bebob->substreams_counter); in pcm_capture_hw_params()
224 amdtp_am824_set_pcm_format(&bebob->tx_stream, params_format(hw_params)); in pcm_capture_hw_params()
232 struct snd_bebob *bebob = substream->private_data; in pcm_playback_hw_params() local
241 atomic_inc(&bebob->substreams_counter); in pcm_playback_hw_params()
243 amdtp_am824_set_pcm_format(&bebob->rx_stream, params_format(hw_params)); in pcm_playback_hw_params()
251 struct snd_bebob *bebob = substream->private_data; in pcm_capture_hw_free() local
254 atomic_dec(&bebob->substreams_counter); in pcm_capture_hw_free()
256 snd_bebob_stream_stop_duplex(bebob); in pcm_capture_hw_free()
263 struct snd_bebob *bebob = substream->private_data; in pcm_playback_hw_free() local
266 atomic_dec(&bebob->substreams_counter); in pcm_playback_hw_free()
268 snd_bebob_stream_stop_duplex(bebob); in pcm_playback_hw_free()
276 struct snd_bebob *bebob = substream->private_data; in pcm_capture_prepare() local
280 err = snd_bebob_stream_start_duplex(bebob, runtime->rate); in pcm_capture_prepare()
282 amdtp_stream_pcm_prepare(&bebob->tx_stream); in pcm_capture_prepare()
289 struct snd_bebob *bebob = substream->private_data; in pcm_playback_prepare() local
293 err = snd_bebob_stream_start_duplex(bebob, runtime->rate); in pcm_playback_prepare()
295 amdtp_stream_pcm_prepare(&bebob->rx_stream); in pcm_playback_prepare()
303 struct snd_bebob *bebob = substream->private_data; in pcm_capture_trigger() local
307 amdtp_stream_pcm_trigger(&bebob->tx_stream, substream); in pcm_capture_trigger()
310 amdtp_stream_pcm_trigger(&bebob->tx_stream, NULL); in pcm_capture_trigger()
321 struct snd_bebob *bebob = substream->private_data; in pcm_playback_trigger() local
325 amdtp_stream_pcm_trigger(&bebob->rx_stream, substream); in pcm_playback_trigger()
328 amdtp_stream_pcm_trigger(&bebob->rx_stream, NULL); in pcm_playback_trigger()
340 struct snd_bebob *bebob = sbstrm->private_data; in pcm_capture_pointer() local
341 return amdtp_stream_pcm_pointer(&bebob->tx_stream); in pcm_capture_pointer()
346 struct snd_bebob *bebob = sbstrm->private_data; in pcm_playback_pointer() local
347 return amdtp_stream_pcm_pointer(&bebob->rx_stream); in pcm_playback_pointer()
374 int snd_bebob_create_pcm_devices(struct snd_bebob *bebob) in snd_bebob_create_pcm_devices() argument
379 err = snd_pcm_new(bebob->card, bebob->card->driver, 0, 1, 1, &pcm); in snd_bebob_create_pcm_devices()
383 pcm->private_data = bebob; in snd_bebob_create_pcm_devices()
385 "%s PCM", bebob->card->shortname); in snd_bebob_create_pcm_devices()