Lines Matching refs:line6

20 static int send_midi_async(struct usb_line6 *line6, unsigned char *data,
26 void line6_midi_receive(struct usb_line6 *line6, unsigned char *data, in line6_midi_receive() argument
29 if (line6->line6midi->substream_receive) in line6_midi_receive()
30 snd_rawmidi_receive(line6->line6midi->substream_receive, in line6_midi_receive()
39 struct usb_line6 *line6 = in line6_midi_transmit() local
40 line6_rawmidi_substream_midi(substream)->line6; in line6_midi_transmit()
41 struct snd_line6_midi *line6midi = line6->line6midi; in line6_midi_transmit()
47 req = min3(line6_midibuf_bytes_free(mb), line6->max_packet_size, in line6_midi_transmit()
66 send_midi_async(line6, chunk, done); in line6_midi_transmit()
78 struct usb_line6 *line6 = (struct usb_line6 *)urb->context; in midi_sent() local
87 spin_lock_irqsave(&line6->line6midi->lock, flags); in midi_sent()
88 num = --line6->line6midi->num_active_send_urbs; in midi_sent()
91 line6_midi_transmit(line6->line6midi->substream_transmit); in midi_sent()
92 num = line6->line6midi->num_active_send_urbs; in midi_sent()
96 wake_up(&line6->line6midi->send_wait); in midi_sent()
98 spin_unlock_irqrestore(&line6->line6midi->lock, flags); in midi_sent()
106 static int send_midi_async(struct usb_line6 *line6, unsigned char *data, in send_midi_async() argument
125 usb_fill_int_urb(urb, line6->usbdev, in send_midi_async()
126 usb_sndintpipe(line6->usbdev, in send_midi_async()
127 line6->properties->ep_ctrl_w), in send_midi_async()
128 transfer_buffer, length, midi_sent, line6, in send_midi_async()
129 line6->interval); in send_midi_async()
139 ++line6->line6midi->num_active_send_urbs; in send_midi_async()
143 dev_err(line6->ifcdev, "usb_submit_urb failed\n"); in send_midi_async()
162 struct usb_line6 *line6 = in line6_midi_output_trigger() local
163 line6_rawmidi_substream_midi(substream)->line6; in line6_midi_output_trigger()
165 line6->line6midi->substream_transmit = substream; in line6_midi_output_trigger()
166 spin_lock_irqsave(&line6->line6midi->lock, flags); in line6_midi_output_trigger()
168 if (line6->line6midi->num_active_send_urbs == 0) in line6_midi_output_trigger()
171 spin_unlock_irqrestore(&line6->line6midi->lock, flags); in line6_midi_output_trigger()
176 struct usb_line6 *line6 = in line6_midi_output_drain() local
177 line6_rawmidi_substream_midi(substream)->line6; in line6_midi_output_drain()
178 struct snd_line6_midi *midi = line6->line6midi; in line6_midi_output_drain()
197 struct usb_line6 *line6 = in line6_midi_input_trigger() local
198 line6_rawmidi_substream_midi(substream)->line6; in line6_midi_input_trigger()
201 line6->line6midi->substream_receive = substream; in line6_midi_input_trigger()
203 line6->line6midi->substream_receive = NULL; in line6_midi_input_trigger()
220 static int snd_line6_new_midi(struct usb_line6 *line6, in snd_line6_new_midi() argument
226 err = snd_rawmidi_new(line6->card, "Line 6 MIDI", 0, 1, 1, rmidi_ret); in snd_line6_new_midi()
231 strcpy(rmidi->id, line6->properties->id); in snd_line6_new_midi()
232 strcpy(rmidi->name, line6->properties->name); in snd_line6_new_midi()
258 int line6_init_midi(struct usb_line6 *line6) in line6_init_midi() argument
264 if (!(line6->properties->capabilities & LINE6_CAP_CONTROL_MIDI)) { in line6_init_midi()
269 err = snd_line6_new_midi(line6, &rmidi); in line6_init_midi()
282 line6midi->line6 = line6; in line6_init_midi()
292 line6->line6midi = line6midi; in line6_init_midi()