Lines Matching refs:line6midi
33 if (line6->line6midi->substream_receive) in line6_midi_receive()
34 snd_rawmidi_receive(line6->line6midi->substream_receive, in line6_midi_receive()
45 struct snd_line6_midi *line6midi = line6->line6midi; in line6_midi_transmit() local
46 struct midi_buffer *mb = &line6midi->midibuf_out; in line6_midi_transmit()
89 spin_lock_irqsave(&line6->line6midi->lock, flags); in midi_sent()
90 num = --line6->line6midi->num_active_send_urbs; in midi_sent()
93 line6_midi_transmit(line6->line6midi->substream_transmit); in midi_sent()
94 num = line6->line6midi->num_active_send_urbs; in midi_sent()
98 wake_up(&line6->line6midi->send_wait); in midi_sent()
100 spin_unlock_irqrestore(&line6->line6midi->lock, flags); in midi_sent()
141 ++line6->line6midi->num_active_send_urbs; in send_midi_async()
167 line6->line6midi->substream_transmit = substream; in line6_midi_output_trigger()
168 spin_lock_irqsave(&line6->line6midi->lock, flags); in line6_midi_output_trigger()
170 if (line6->line6midi->num_active_send_urbs == 0) in line6_midi_output_trigger()
173 spin_unlock_irqrestore(&line6->line6midi->lock, flags); in line6_midi_output_trigger()
180 struct snd_line6_midi *midi = line6->line6midi; in line6_midi_output_drain()
203 line6->line6midi->substream_receive = substream; in line6_midi_input_trigger()
205 line6->line6midi->substream_receive = NULL; in line6_midi_input_trigger()
250 struct snd_line6_midi *line6midi = rmidi->private_data; in snd_line6_midi_free() local
252 line6_midibuf_destroy(&line6midi->midibuf_in); in snd_line6_midi_free()
253 line6_midibuf_destroy(&line6midi->midibuf_out); in snd_line6_midi_free()
254 kfree(line6midi); in snd_line6_midi_free()
264 struct snd_line6_midi *line6midi; in line6_init_midi() local
275 line6midi = kzalloc(sizeof(struct snd_line6_midi), GFP_KERNEL); in line6_init_midi()
276 if (!line6midi) in line6_init_midi()
279 rmidi->private_data = line6midi; in line6_init_midi()
282 init_waitqueue_head(&line6midi->send_wait); in line6_init_midi()
283 spin_lock_init(&line6midi->lock); in line6_init_midi()
284 line6midi->line6 = line6; in line6_init_midi()
286 err = line6_midibuf_init(&line6midi->midibuf_in, MIDI_BUFFER_SIZE, 0); in line6_init_midi()
290 err = line6_midibuf_init(&line6midi->midibuf_out, MIDI_BUFFER_SIZE, 1); in line6_init_midi()
294 line6->line6midi = line6midi; in line6_init_midi()