Lines Matching defs:motu

3  * motu-pcm.c - a part of driver for MOTU FireWire series
9 #include "motu.h"
69 static void limit_channels_and_rates(struct snd_motu *motu,
95 static int init_hw_info(struct snd_motu *motu,
106 stream = &motu->tx_stream;
107 formats = &motu->tx_packet_formats;
110 stream = &motu->rx_stream;
111 formats = &motu->rx_packet_formats;
114 limit_channels_and_rates(motu, runtime, formats);
132 struct snd_motu *motu = substream->private_data;
133 struct amdtp_domain *d = &motu->domain;
137 err = snd_motu_stream_lock_try(motu);
141 mutex_lock(&motu->mutex);
143 err = snd_motu_stream_cache_packet_formats(motu);
147 err = init_hw_info(motu, substream);
151 err = snd_motu_protocol_get_clock_source(motu, &src);
160 (motu->substreams_counter > 0 && d->events_per_period > 0)) {
165 err = snd_motu_protocol_get_clock_rate(motu, &rate);
189 mutex_unlock(&motu->mutex);
193 mutex_unlock(&motu->mutex);
194 snd_motu_stream_lock_release(motu);
200 struct snd_motu *motu = substream->private_data;
202 snd_motu_stream_lock_release(motu);
210 struct snd_motu *motu = substream->private_data;
218 mutex_lock(&motu->mutex);
219 err = snd_motu_stream_reserve_duplex(motu, rate,
222 ++motu->substreams_counter;
223 mutex_unlock(&motu->mutex);
231 struct snd_motu *motu = substream->private_data;
233 mutex_lock(&motu->mutex);
236 --motu->substreams_counter;
238 snd_motu_stream_stop_duplex(motu);
240 mutex_unlock(&motu->mutex);
247 struct snd_motu *motu = substream->private_data;
250 mutex_lock(&motu->mutex);
251 err = snd_motu_stream_start_duplex(motu);
252 mutex_unlock(&motu->mutex);
254 amdtp_stream_pcm_prepare(&motu->tx_stream);
260 struct snd_motu *motu = substream->private_data;
263 mutex_lock(&motu->mutex);
264 err = snd_motu_stream_start_duplex(motu);
265 mutex_unlock(&motu->mutex);
267 amdtp_stream_pcm_prepare(&motu->rx_stream);
274 struct snd_motu *motu = substream->private_data;
278 amdtp_stream_pcm_trigger(&motu->tx_stream, substream);
281 amdtp_stream_pcm_trigger(&motu->tx_stream, NULL);
291 struct snd_motu *motu = substream->private_data;
295 amdtp_stream_pcm_trigger(&motu->rx_stream, substream);
298 amdtp_stream_pcm_trigger(&motu->rx_stream, NULL);
309 struct snd_motu *motu = substream->private_data;
311 return amdtp_domain_stream_pcm_pointer(&motu->domain, &motu->tx_stream);
315 struct snd_motu *motu = substream->private_data;
317 return amdtp_domain_stream_pcm_pointer(&motu->domain, &motu->rx_stream);
322 struct snd_motu *motu = substream->private_data;
324 return amdtp_domain_stream_pcm_ack(&motu->domain, &motu->tx_stream);
329 struct snd_motu *motu = substream->private_data;
331 return amdtp_domain_stream_pcm_ack(&motu->domain, &motu->rx_stream);
334 int snd_motu_create_pcm_devices(struct snd_motu *motu)
359 err = snd_pcm_new(motu->card, motu->card->driver, 0, 1, 1, &pcm);
362 pcm->private_data = motu;
363 strcpy(pcm->name, motu->card->shortname);