Home
last modified time | relevance | path

Searched refs:motu (Results 1 – 14 of 14) sorted by relevance

/Linux-v4.19/sound/firewire/motu/
Dmotu-stream.c29 static int start_both_streams(struct snd_motu *motu, unsigned int rate) in start_both_streams() argument
36 if ((motu->spec->flags & SND_MOTU_SPEC_RX_MIDI_2ND_Q) || in start_both_streams()
37 (motu->spec->flags & SND_MOTU_SPEC_RX_MIDI_3RD_Q)) in start_both_streams()
41 err = amdtp_motu_set_parameters(&motu->rx_stream, rate, midi_ports, in start_both_streams()
42 &motu->rx_packet_formats); in start_both_streams()
46 if ((motu->spec->flags & SND_MOTU_SPEC_TX_MIDI_2ND_Q) || in start_both_streams()
47 (motu->spec->flags & SND_MOTU_SPEC_TX_MIDI_3RD_Q)) in start_both_streams()
52 err = amdtp_motu_set_parameters(&motu->tx_stream, rate, midi_ports, in start_both_streams()
53 &motu->tx_packet_formats); in start_both_streams()
58 err = fw_iso_resources_allocate(&motu->rx_resources, in start_both_streams()
[all …]
Dmotu.c29 static void name_card(struct snd_motu *motu) in name_card() argument
31 struct fw_device *fw_dev = fw_parent_device(motu->unit); in name_card()
36 fw_csr_iterator_init(&it, motu->unit->directory); in name_card()
45 strcpy(motu->card->driver, "FW-MOTU"); in name_card()
46 strcpy(motu->card->shortname, motu->spec->name); in name_card()
47 strcpy(motu->card->mixername, motu->spec->name); in name_card()
48 snprintf(motu->card->longname, sizeof(motu->card->longname), in name_card()
50 motu->spec->name, version, in name_card()
52 dev_name(&motu->unit->device), 100 << fw_dev->max_speed); in name_card()
55 static void motu_free(struct snd_motu *motu) in motu_free() argument
[all …]
Dmotu-midi.c12 struct snd_motu *motu = substream->rmidi->private_data; in midi_capture_open() local
15 err = snd_motu_stream_lock_try(motu); in midi_capture_open()
19 mutex_lock(&motu->mutex); in midi_capture_open()
21 motu->capture_substreams++; in midi_capture_open()
22 err = snd_motu_stream_start_duplex(motu, 0); in midi_capture_open()
24 mutex_unlock(&motu->mutex); in midi_capture_open()
27 snd_motu_stream_lock_release(motu); in midi_capture_open()
34 struct snd_motu *motu = substream->rmidi->private_data; in midi_playback_open() local
37 err = snd_motu_stream_lock_try(motu); in midi_playback_open()
41 mutex_lock(&motu->mutex); in midi_playback_open()
[all …]
Dmotu-hwdep.c23 struct snd_motu *motu = hwdep->private_data; in hwdep_read() local
27 spin_lock_irq(&motu->lock); in hwdep_read()
29 while (!motu->dev_lock_changed && motu->msg == 0) { in hwdep_read()
30 prepare_to_wait(&motu->hwdep_wait, &wait, TASK_INTERRUPTIBLE); in hwdep_read()
31 spin_unlock_irq(&motu->lock); in hwdep_read()
33 finish_wait(&motu->hwdep_wait, &wait); in hwdep_read()
36 spin_lock_irq(&motu->lock); in hwdep_read()
40 if (motu->dev_lock_changed) { in hwdep_read()
42 event.lock_status.status = (motu->dev_lock_count > 0); in hwdep_read()
43 motu->dev_lock_changed = false; in hwdep_read()
[all …]
Dmotu-pcm.c72 static void limit_channels_and_rates(struct snd_motu *motu, in limit_channels_and_rates() argument
99 static int init_hw_info(struct snd_motu *motu, in init_hw_info() argument
110 stream = &motu->tx_stream; in init_hw_info()
111 formats = &motu->tx_packet_formats; in init_hw_info()
114 stream = &motu->rx_stream; in init_hw_info()
115 formats = &motu->rx_packet_formats; in init_hw_info()
118 limit_channels_and_rates(motu, runtime, formats); in init_hw_info()
136 struct snd_motu *motu = substream->private_data; in pcm_open() local
137 const struct snd_motu_protocol *const protocol = motu->spec->protocol; in pcm_open()
142 err = snd_motu_stream_lock_try(motu); in pcm_open()
[all …]
Dmotu-transaction.c16 int snd_motu_transaction_read(struct snd_motu *motu, u32 offset, __be32 *reg, in snd_motu_transaction_read() argument
28 return snd_fw_transaction(motu->unit, tcode, in snd_motu_transaction_read()
32 int snd_motu_transaction_write(struct snd_motu *motu, u32 offset, __be32 *reg, in snd_motu_transaction_write() argument
44 return snd_fw_transaction(motu->unit, tcode, in snd_motu_transaction_write()
53 struct snd_motu *motu = callback_data; in handle_message() local
62 if (offset != motu->async_handler.offset || length != 4) { in handle_message()
67 spin_lock_irqsave(&motu->lock, flags); in handle_message()
68 motu->msg = be32_to_cpu(*buf); in handle_message()
69 spin_unlock_irqrestore(&motu->lock, flags); in handle_message()
73 wake_up(&motu->hwdep_wait); in handle_message()
[all …]
Dmotu.h111 int (*get_clock_rate)(struct snd_motu *motu, unsigned int *rate);
112 int (*set_clock_rate)(struct snd_motu *motu, unsigned int rate);
113 int (*get_clock_source)(struct snd_motu *motu,
115 int (*switch_fetching_mode)(struct snd_motu *motu, bool enable);
116 int (*cache_packet_formats)(struct snd_motu *motu);
145 int snd_motu_transaction_read(struct snd_motu *motu, u32 offset, __be32 *reg,
147 int snd_motu_transaction_write(struct snd_motu *motu, u32 offset, __be32 *reg,
149 int snd_motu_transaction_register(struct snd_motu *motu);
150 int snd_motu_transaction_reregister(struct snd_motu *motu);
151 void snd_motu_transaction_unregister(struct snd_motu *motu);
[all …]
Dmotu-protocol-v2.c28 static int v2_get_clock_rate(struct snd_motu *motu, unsigned int *rate) in v2_get_clock_rate() argument
34 err = snd_motu_transaction_read(motu, V2_CLOCK_STATUS_OFFSET, &reg, in v2_get_clock_rate()
48 static int v2_set_clock_rate(struct snd_motu *motu, unsigned int rate) in v2_set_clock_rate() argument
62 err = snd_motu_transaction_read(motu, V2_CLOCK_STATUS_OFFSET, &reg, in v2_set_clock_rate()
71 if (motu->spec == &snd_motu_spec_traveler) { in v2_set_clock_rate()
77 return snd_motu_transaction_write(motu, V2_CLOCK_STATUS_OFFSET, &reg, in v2_set_clock_rate()
81 static int v2_get_clock_source(struct snd_motu *motu, in v2_get_clock_source() argument
88 err = snd_motu_transaction_read(motu, V2_CLOCK_STATUS_OFFSET, &reg, in v2_get_clock_source()
98 err = snd_motu_transaction_read(motu, V2_IN_OUT_CONF_OFFSET, &reg, in v2_get_clock_source()
129 static int v2_switch_fetching_mode(struct snd_motu *motu, bool enable) in v2_switch_fetching_mode() argument
[all …]
DMakefile2 CFLAGS_amdtp-motu.o := -I$(src)
4 snd-firewire-motu-objs := motu.o amdtp-motu.o motu-transaction.o motu-stream.o \
5 motu-proc.o motu-pcm.o motu-midi.o motu-hwdep.o \
6 motu-protocol-v2.o motu-protocol-v3.o
7 obj-$(CONFIG_SND_FIREWIRE_MOTU) += snd-firewire-motu.o
Dmotu-proc.c29 struct snd_motu *motu = entry->private_data; in proc_read_clock() local
30 const struct snd_motu_protocol *const protocol = motu->spec->protocol; in proc_read_clock()
34 if (protocol->get_clock_rate(motu, &rate) < 0) in proc_read_clock()
36 if (protocol->get_clock_source(motu, &source) < 0) in proc_read_clock()
46 struct snd_motu *motu = entry->private_data; in proc_read_format() local
47 const struct snd_motu_protocol *const protocol = motu->spec->protocol; in proc_read_format()
52 if (protocol->cache_packet_formats(motu) < 0) in proc_read_format()
59 formats = &motu->tx_packet_formats; in proc_read_format()
72 formats = &motu->rx_packet_formats; in proc_read_format()
82 static void add_node(struct snd_motu *motu, struct snd_info_entry *root, in add_node() argument
[all …]
Dmotu-protocol-v3.c28 static int v3_get_clock_rate(struct snd_motu *motu, unsigned int *rate) in v3_get_clock_rate() argument
34 err = snd_motu_transaction_read(motu, V3_CLOCK_STATUS_OFFSET, &reg, in v3_get_clock_rate()
49 static int v3_set_clock_rate(struct snd_motu *motu, unsigned int rate) in v3_set_clock_rate() argument
63 err = snd_motu_transaction_read(motu, V3_CLOCK_STATUS_OFFSET, &reg, in v3_set_clock_rate()
75 err = snd_motu_transaction_write(motu, V3_CLOCK_STATUS_OFFSET, &reg, in v3_set_clock_rate()
89 static int v3_get_clock_source(struct snd_motu *motu, in v3_get_clock_source() argument
97 err = snd_motu_transaction_read(motu, V3_CLOCK_STATUS_OFFSET, &reg, in v3_get_clock_source()
111 err = snd_motu_transaction_read(motu, V3_OPT_IFACE_MODE_OFFSET, in v3_get_clock_source()
135 static int v3_switch_fetching_mode(struct snd_motu *motu, bool enable) in v3_switch_fetching_mode() argument
141 err = snd_motu_transaction_read(motu, V3_CLOCK_STATUS_OFFSET, &reg, in v3_switch_fetching_mode()
[all …]
Damdtp-motu-trace.h122 #define TRACE_INCLUDE_FILE amdtp-motu-trace
/Linux-v4.19/sound/firewire/
DMakefile17 obj-$(CONFIG_SND_FIREWIRE_MOTU) += motu/
DKconfig153 will be called snd-firewire-motu.