line6              29 sound/usb/line6/capture.c 				    line6pcm->line6->iso_buffers);
line6              31 sound/usb/line6/capture.c 	if (index < 0 || index >= line6pcm->line6->iso_buffers) {
line6              32 sound/usb/line6/capture.c 		dev_err(line6pcm->line6->ifcdev, "no free URB found\n");
line6              58 sound/usb/line6/capture.c 		dev_err(line6pcm->line6->ifcdev,
line6              72 sound/usb/line6/capture.c 	for (i = 0; i < line6pcm->line6->iso_buffers; ++i) {
line6             114 sound/usb/line6/capture.c 			dev_err(line6pcm->line6->ifcdev,
line6             155 sound/usb/line6/capture.c 	for (index = 0; index < line6pcm->line6->iso_buffers; ++index)
line6             175 sound/usb/line6/capture.c 			dev_err(line6pcm->line6->ifcdev,
line6             260 sound/usb/line6/capture.c 	struct usb_line6 *line6 = line6pcm->line6;
line6             263 sound/usb/line6/capture.c 	line6pcm->in.urbs = kcalloc(line6->iso_buffers, sizeof(struct urb *),
line6             269 sound/usb/line6/capture.c 	for (i = 0; i < line6->iso_buffers; ++i) {
line6             279 sound/usb/line6/capture.c 		urb->dev = line6->usbdev;
line6             281 sound/usb/line6/capture.c 		    usb_rcvisocpipe(line6->usbdev,
line6             282 sound/usb/line6/capture.c 				    line6->properties->ep_audio_r &
line6              46 sound/usb/line6/driver.c 	struct usb_line6 *line6;
line6              62 sound/usb/line6/driver.c static int line6_start_listen(struct usb_line6 *line6)
line6              66 sound/usb/line6/driver.c 	if (line6->properties->capabilities & LINE6_CAP_CONTROL_MIDI) {
line6              67 sound/usb/line6/driver.c 		usb_fill_int_urb(line6->urb_listen, line6->usbdev,
line6              68 sound/usb/line6/driver.c 			usb_rcvintpipe(line6->usbdev, line6->properties->ep_ctrl_r),
line6              69 sound/usb/line6/driver.c 			line6->buffer_listen, LINE6_BUFSIZE_LISTEN,
line6              70 sound/usb/line6/driver.c 			line6_data_received, line6, line6->interval);
line6              72 sound/usb/line6/driver.c 		usb_fill_bulk_urb(line6->urb_listen, line6->usbdev,
line6              73 sound/usb/line6/driver.c 			usb_rcvbulkpipe(line6->usbdev, line6->properties->ep_ctrl_r),
line6              74 sound/usb/line6/driver.c 			line6->buffer_listen, LINE6_BUFSIZE_LISTEN,
line6              75 sound/usb/line6/driver.c 			line6_data_received, line6);
line6              79 sound/usb/line6/driver.c 	if (usb_urb_ep_type_check(line6->urb_listen)) {
line6              80 sound/usb/line6/driver.c 		dev_err(line6->ifcdev, "invalid control EP\n");
line6              84 sound/usb/line6/driver.c 	line6->urb_listen->actual_length = 0;
line6              85 sound/usb/line6/driver.c 	err = usb_submit_urb(line6->urb_listen, GFP_ATOMIC);
line6              92 sound/usb/line6/driver.c static void line6_stop_listen(struct usb_line6 *line6)
line6              94 sound/usb/line6/driver.c 	usb_kill_urb(line6->urb_listen);
line6             100 sound/usb/line6/driver.c static int line6_send_raw_message(struct usb_line6 *line6, const char *buffer,
line6             104 sound/usb/line6/driver.c 	const struct line6_properties *properties = line6->properties;
line6             106 sound/usb/line6/driver.c 	for (i = 0; i < size; i += line6->max_packet_size) {
line6             109 sound/usb/line6/driver.c 		int frag_size = min(line6->max_packet_size, size - i);
line6             113 sound/usb/line6/driver.c 			retval = usb_interrupt_msg(line6->usbdev,
line6             114 sound/usb/line6/driver.c 						usb_sndintpipe(line6->usbdev, properties->ep_ctrl_w),
line6             118 sound/usb/line6/driver.c 			retval = usb_bulk_msg(line6->usbdev,
line6             119 sound/usb/line6/driver.c 						usb_sndbulkpipe(line6->usbdev, properties->ep_ctrl_w),
line6             125 sound/usb/line6/driver.c 			dev_err(line6->ifcdev,
line6             157 sound/usb/line6/driver.c 	struct usb_line6 *line6 = msg->line6;
line6             159 sound/usb/line6/driver.c 	int bytes = min(msg->size - done, line6->max_packet_size);
line6             161 sound/usb/line6/driver.c 	if (line6->properties->capabilities & LINE6_CAP_CONTROL_MIDI) {
line6             162 sound/usb/line6/driver.c 		usb_fill_int_urb(urb, line6->usbdev,
line6             163 sound/usb/line6/driver.c 			usb_sndintpipe(line6->usbdev, line6->properties->ep_ctrl_w),
line6             165 sound/usb/line6/driver.c 			line6_async_request_sent, msg, line6->interval);
line6             167 sound/usb/line6/driver.c 		usb_fill_bulk_urb(urb, line6->usbdev,
line6             168 sound/usb/line6/driver.c 			usb_sndbulkpipe(line6->usbdev, line6->properties->ep_ctrl_w),
line6             187 sound/usb/line6/driver.c 	dev_err(line6->ifcdev, "%s: usb_submit_urb failed (%d)\n",
line6             197 sound/usb/line6/driver.c int line6_send_raw_message_async(struct usb_line6 *line6, const char *buffer,
line6             217 sound/usb/line6/driver.c 	msg->line6 = line6;
line6             230 sound/usb/line6/driver.c int line6_version_request_async(struct usb_line6 *line6)
line6             240 sound/usb/line6/driver.c 	retval = line6_send_raw_message_async(line6, buffer,
line6             250 sound/usb/line6/driver.c int line6_send_sysex_message(struct usb_line6 *line6, const char *buffer,
line6             253 sound/usb/line6/driver.c 	return line6_send_raw_message(line6, buffer,
line6             264 sound/usb/line6/driver.c char *line6_alloc_sysex_buffer(struct usb_line6 *line6, int code1, int code2,
line6             286 sound/usb/line6/driver.c 	struct usb_line6 *line6 = (struct usb_line6 *)urb->context;
line6             287 sound/usb/line6/driver.c 	struct midi_buffer *mb = &line6->line6midi->midibuf_in;
line6             293 sound/usb/line6/driver.c 	if (line6->properties->capabilities & LINE6_CAP_CONTROL_MIDI) {
line6             299 sound/usb/line6/driver.c 			dev_dbg(line6->ifcdev, "%d %d buffer overflow - message skipped\n",
line6             305 sound/usb/line6/driver.c 				line6_midibuf_read(mb, line6->buffer_message,
line6             311 sound/usb/line6/driver.c 			line6->message_length = done;
line6             312 sound/usb/line6/driver.c 			line6_midi_receive(line6, line6->buffer_message, done);
line6             314 sound/usb/line6/driver.c 			if (line6->process_message)
line6             315 sound/usb/line6/driver.c 				line6->process_message(line6);
line6             318 sound/usb/line6/driver.c 		line6->buffer_message = urb->transfer_buffer;
line6             319 sound/usb/line6/driver.c 		line6->message_length = urb->actual_length;
line6             320 sound/usb/line6/driver.c 		if (line6->process_message)
line6             321 sound/usb/line6/driver.c 			line6->process_message(line6);
line6             322 sound/usb/line6/driver.c 		line6->buffer_message = NULL;
line6             325 sound/usb/line6/driver.c 	line6_start_listen(line6);
line6             334 sound/usb/line6/driver.c int line6_read_data(struct usb_line6 *line6, unsigned address, void *data,
line6             337 sound/usb/line6/driver.c 	struct usb_device *usbdev = line6->usbdev;
line6             356 sound/usb/line6/driver.c 		dev_err(line6->ifcdev, "read request failed (error %d)\n", ret);
line6             370 sound/usb/line6/driver.c 			dev_err(line6->ifcdev,
line6             381 sound/usb/line6/driver.c 		dev_err(line6->ifcdev, "read failed after %d retries\n",
line6             386 sound/usb/line6/driver.c 		dev_err(line6->ifcdev,
line6             399 sound/usb/line6/driver.c 		dev_err(line6->ifcdev, "read failed (error %d)\n", ret);
line6             410 sound/usb/line6/driver.c int line6_write_data(struct usb_line6 *line6, unsigned address, void *data,
line6             413 sound/usb/line6/driver.c 	struct usb_device *usbdev = line6->usbdev;
line6             431 sound/usb/line6/driver.c 		dev_err(line6->ifcdev,
line6             447 sound/usb/line6/driver.c 			dev_err(line6->ifcdev,
line6             457 sound/usb/line6/driver.c 		dev_err(line6->ifcdev, "write failed after %d retries\n",
line6             461 sound/usb/line6/driver.c 		dev_err(line6->ifcdev, "write failed (error %d)\n", ret);
line6             474 sound/usb/line6/driver.c int line6_read_serial_number(struct usb_line6 *line6, u32 *serial_number)
line6             476 sound/usb/line6/driver.c 	return line6_read_data(line6, 0x80d0, serial_number,
line6             486 sound/usb/line6/driver.c 	struct usb_line6 *line6 = card->private_data;
line6             487 sound/usb/line6/driver.c 	struct usb_device *usbdev = line6->usbdev;
line6             492 sound/usb/line6/driver.c 	kfree(line6->buffer_message);
line6             494 sound/usb/line6/driver.c 	kfree(line6->buffer_listen);
line6             497 sound/usb/line6/driver.c 	usb_free_urb(line6->urb_listen);
line6             498 sound/usb/line6/driver.c 	line6->urb_listen = NULL;
line6             504 sound/usb/line6/driver.c static void line6_get_usb_properties(struct usb_line6 *line6)
line6             506 sound/usb/line6/driver.c 	struct usb_device *usbdev = line6->usbdev;
line6             507 sound/usb/line6/driver.c 	const struct line6_properties *properties = line6->properties;
line6             513 sound/usb/line6/driver.c 			pipe = usb_rcvintpipe(line6->usbdev,
line6             514 sound/usb/line6/driver.c 				line6->properties->ep_ctrl_r);
line6             516 sound/usb/line6/driver.c 			pipe = usb_rcvbulkpipe(line6->usbdev,
line6             517 sound/usb/line6/driver.c 				line6->properties->ep_ctrl_r);
line6             524 sound/usb/line6/driver.c 		line6->interval = ep->desc.bInterval;
line6             525 sound/usb/line6/driver.c 		line6->max_packet_size = le16_to_cpu(ep->desc.wMaxPacketSize);
line6             528 sound/usb/line6/driver.c 			dev_err(line6->ifcdev,
line6             531 sound/usb/line6/driver.c 		line6->interval = LINE6_FALLBACK_INTERVAL;
line6             532 sound/usb/line6/driver.c 		line6->max_packet_size = LINE6_FALLBACK_MAXPACKETSIZE;
line6             537 sound/usb/line6/driver.c 		line6->intervals_per_second = USB_LOW_INTERVALS_PER_SECOND;
line6             538 sound/usb/line6/driver.c 		line6->iso_buffers = USB_LOW_ISO_BUFFERS;
line6             540 sound/usb/line6/driver.c 		line6->intervals_per_second = USB_HIGH_INTERVALS_PER_SECOND;
line6             541 sound/usb/line6/driver.c 		line6->iso_buffers = USB_HIGH_ISO_BUFFERS;
line6             548 sound/usb/line6/driver.c 	struct usb_line6 *line6 = hw->private_data;
line6             552 sound/usb/line6/driver.c 	line6->messages.active = 1;
line6             560 sound/usb/line6/driver.c 	struct usb_line6 *line6 = hw->private_data;
line6             562 sound/usb/line6/driver.c 	line6->messages.active = 0;
line6             572 sound/usb/line6/driver.c 	struct usb_line6 *line6 = hwdep->private_data;
line6             576 sound/usb/line6/driver.c 	if (mutex_lock_interruptible(&line6->messages.read_lock))
line6             579 sound/usb/line6/driver.c 	while (kfifo_len(&line6->messages.fifo) == 0) {
line6             580 sound/usb/line6/driver.c 		mutex_unlock(&line6->messages.read_lock);
line6             583 sound/usb/line6/driver.c 			line6->messages.wait_queue,
line6             584 sound/usb/line6/driver.c 			kfifo_len(&line6->messages.fifo) != 0);
line6             588 sound/usb/line6/driver.c 		if (mutex_lock_interruptible(&line6->messages.read_lock))
line6             592 sound/usb/line6/driver.c 	if (kfifo_peek_len(&line6->messages.fifo) > count) {
line6             596 sound/usb/line6/driver.c 		rv = kfifo_to_user(&line6->messages.fifo, buf, count, &out_count);
line6             601 sound/usb/line6/driver.c 	mutex_unlock(&line6->messages.read_lock);
line6             610 sound/usb/line6/driver.c 	struct usb_line6 *line6 = hwdep->private_data;
line6             614 sound/usb/line6/driver.c 	if (count > line6->max_packet_size * LINE6_RAW_MESSAGES_MAXCOUNT) {
line6             623 sound/usb/line6/driver.c 	rv = line6_send_raw_message(line6, data_copy, count);
line6             637 sound/usb/line6/driver.c static void line6_hwdep_push_message(struct usb_line6 *line6)
line6             639 sound/usb/line6/driver.c 	if (!line6->messages.active)
line6             642 sound/usb/line6/driver.c 	if (kfifo_avail(&line6->messages.fifo) >= line6->message_length) {
line6             644 sound/usb/line6/driver.c 		kfifo_in(&line6->messages.fifo,
line6             645 sound/usb/line6/driver.c 			line6->buffer_message, line6->message_length);
line6             648 sound/usb/line6/driver.c 	wake_up_interruptible(&line6->messages.wait_queue);
line6             651 sound/usb/line6/driver.c static int line6_hwdep_init(struct usb_line6 *line6)
line6             657 sound/usb/line6/driver.c 	line6->process_message = line6_hwdep_push_message;
line6             658 sound/usb/line6/driver.c 	line6->messages.active = 0;
line6             659 sound/usb/line6/driver.c 	init_waitqueue_head(&line6->messages.wait_queue);
line6             660 sound/usb/line6/driver.c 	mutex_init(&line6->messages.read_lock);
line6             661 sound/usb/line6/driver.c 	INIT_KFIFO(line6->messages.fifo);
line6             663 sound/usb/line6/driver.c 	err = snd_hwdep_new(line6->card, "config", 0, &hwdep);
line6             669 sound/usb/line6/driver.c 	hwdep->private_data = line6;
line6             676 sound/usb/line6/driver.c static int line6_init_cap_control(struct usb_line6 *line6)
line6             681 sound/usb/line6/driver.c 	line6->buffer_listen = kmalloc(LINE6_BUFSIZE_LISTEN, GFP_KERNEL);
line6             682 sound/usb/line6/driver.c 	if (!line6->buffer_listen)
line6             685 sound/usb/line6/driver.c 	line6->urb_listen = usb_alloc_urb(0, GFP_KERNEL);
line6             686 sound/usb/line6/driver.c 	if (!line6->urb_listen)
line6             689 sound/usb/line6/driver.c 	if (line6->properties->capabilities & LINE6_CAP_CONTROL_MIDI) {
line6             690 sound/usb/line6/driver.c 		line6->buffer_message = kmalloc(LINE6_MIDI_MESSAGE_MAXLEN, GFP_KERNEL);
line6             691 sound/usb/line6/driver.c 		if (!line6->buffer_message)
line6             694 sound/usb/line6/driver.c 		ret = line6_hwdep_init(line6);
line6             699 sound/usb/line6/driver.c 	ret = line6_start_listen(line6);
line6             701 sound/usb/line6/driver.c 		dev_err(line6->ifcdev, "cannot start listening: %d\n", ret);
line6             710 sound/usb/line6/driver.c 	struct usb_line6 *line6 =
line6             713 sound/usb/line6/driver.c 	if (line6->startup)
line6             714 sound/usb/line6/driver.c 		line6->startup(line6);
line6             729 sound/usb/line6/driver.c 	struct usb_line6 *line6;
line6             733 sound/usb/line6/driver.c 	if (WARN_ON(data_size < sizeof(*line6)))
line6             747 sound/usb/line6/driver.c 	line6 = card->private_data;
line6             748 sound/usb/line6/driver.c 	line6->card = card;
line6             749 sound/usb/line6/driver.c 	line6->properties = properties;
line6             750 sound/usb/line6/driver.c 	line6->usbdev = usbdev;
line6             751 sound/usb/line6/driver.c 	line6->ifcdev = &interface->dev;
line6             752 sound/usb/line6/driver.c 	INIT_DELAYED_WORK(&line6->startup_work, line6_startup_work);
line6             758 sound/usb/line6/driver.c 		dev_name(line6->ifcdev));
line6             761 sound/usb/line6/driver.c 	usb_set_intfdata(interface, line6);
line6             780 sound/usb/line6/driver.c 	line6_get_usb_properties(line6);
line6             783 sound/usb/line6/driver.c 		ret = line6_init_cap_control(line6);
line6             789 sound/usb/line6/driver.c 	ret = private_init(line6, id);
line6             814 sound/usb/line6/driver.c 	struct usb_line6 *line6 = usb_get_intfdata(interface);
line6             817 sound/usb/line6/driver.c 	if (!line6)
line6             820 sound/usb/line6/driver.c 	if (WARN_ON(usbdev != line6->usbdev))
line6             823 sound/usb/line6/driver.c 	cancel_delayed_work(&line6->startup_work);
line6             825 sound/usb/line6/driver.c 	if (line6->urb_listen != NULL)
line6             826 sound/usb/line6/driver.c 		line6_stop_listen(line6);
line6             828 sound/usb/line6/driver.c 	snd_card_disconnect(line6->card);
line6             829 sound/usb/line6/driver.c 	if (line6->line6pcm)
line6             830 sound/usb/line6/driver.c 		line6_pcm_disconnect(line6->line6pcm);
line6             831 sound/usb/line6/driver.c 	if (line6->disconnect)
line6             832 sound/usb/line6/driver.c 		line6->disconnect(line6);
line6             835 sound/usb/line6/driver.c 		 line6->properties->name);
line6             840 sound/usb/line6/driver.c 	snd_card_free_when_closed(line6->card);
line6             851 sound/usb/line6/driver.c 	struct usb_line6 *line6 = usb_get_intfdata(interface);
line6             852 sound/usb/line6/driver.c 	struct snd_line6_pcm *line6pcm = line6->line6pcm;
line6             854 sound/usb/line6/driver.c 	snd_power_change_state(line6->card, SNDRV_CTL_POWER_D3hot);
line6             856 sound/usb/line6/driver.c 	if (line6->properties->capabilities & LINE6_CAP_CONTROL)
line6             857 sound/usb/line6/driver.c 		line6_stop_listen(line6);
line6             871 sound/usb/line6/driver.c 	struct usb_line6 *line6 = usb_get_intfdata(interface);
line6             873 sound/usb/line6/driver.c 	if (line6->properties->capabilities & LINE6_CAP_CONTROL)
line6             874 sound/usb/line6/driver.c 		line6_start_listen(line6);
line6             876 sound/usb/line6/driver.c 	snd_power_change_state(line6->card, SNDRV_CTL_POWER_D0);
line6             177 sound/usb/line6/driver.h 	void (*disconnect)(struct usb_line6 *line6);
line6             178 sound/usb/line6/driver.h 	void (*startup)(struct usb_line6 *line6);
line6             181 sound/usb/line6/driver.h extern char *line6_alloc_sysex_buffer(struct usb_line6 *line6, int code1,
line6             183 sound/usb/line6/driver.h extern int line6_read_data(struct usb_line6 *line6, unsigned address,
line6             185 sound/usb/line6/driver.h extern int line6_read_serial_number(struct usb_line6 *line6,
line6             187 sound/usb/line6/driver.h extern int line6_send_raw_message_async(struct usb_line6 *line6,
line6             189 sound/usb/line6/driver.h extern int line6_send_sysex_message(struct usb_line6 *line6,
line6             193 sound/usb/line6/driver.h extern int line6_version_request_async(struct usb_line6 *line6);
line6             194 sound/usb/line6/driver.h extern int line6_write_data(struct usb_line6 *line6, unsigned address,
line6              20 sound/usb/line6/midi.c static int send_midi_async(struct usb_line6 *line6, unsigned char *data,
line6              26 sound/usb/line6/midi.c void line6_midi_receive(struct usb_line6 *line6, unsigned char *data,
line6              29 sound/usb/line6/midi.c 	if (line6->line6midi->substream_receive)
line6              30 sound/usb/line6/midi.c 		snd_rawmidi_receive(line6->line6midi->substream_receive,
line6              39 sound/usb/line6/midi.c 	struct usb_line6 *line6 =
line6              40 sound/usb/line6/midi.c 	    line6_rawmidi_substream_midi(substream)->line6;
line6              41 sound/usb/line6/midi.c 	struct snd_line6_midi *line6midi = line6->line6midi;
line6              47 sound/usb/line6/midi.c 		req = min(line6_midibuf_bytes_free(mb), line6->max_packet_size);
line6              64 sound/usb/line6/midi.c 		send_midi_async(line6, chunk, done);
line6              76 sound/usb/line6/midi.c 	struct usb_line6 *line6 = (struct usb_line6 *)urb->context;
line6              85 sound/usb/line6/midi.c 	spin_lock_irqsave(&line6->line6midi->lock, flags);
line6              86 sound/usb/line6/midi.c 	num = --line6->line6midi->num_active_send_urbs;
line6              89 sound/usb/line6/midi.c 		line6_midi_transmit(line6->line6midi->substream_transmit);
line6              90 sound/usb/line6/midi.c 		num = line6->line6midi->num_active_send_urbs;
line6              94 sound/usb/line6/midi.c 		wake_up(&line6->line6midi->send_wait);
line6              96 sound/usb/line6/midi.c 	spin_unlock_irqrestore(&line6->line6midi->lock, flags);
line6             104 sound/usb/line6/midi.c static int send_midi_async(struct usb_line6 *line6, unsigned char *data,
line6             123 sound/usb/line6/midi.c 	usb_fill_int_urb(urb, line6->usbdev,
line6             124 sound/usb/line6/midi.c 			 usb_sndintpipe(line6->usbdev,
line6             125 sound/usb/line6/midi.c 					 line6->properties->ep_ctrl_w),
line6             126 sound/usb/line6/midi.c 			 transfer_buffer, length, midi_sent, line6,
line6             127 sound/usb/line6/midi.c 			 line6->interval);
line6             137 sound/usb/line6/midi.c 	++line6->line6midi->num_active_send_urbs;
line6             141 sound/usb/line6/midi.c 	dev_err(line6->ifcdev, "usb_submit_urb failed\n");
line6             160 sound/usb/line6/midi.c 	struct usb_line6 *line6 =
line6             161 sound/usb/line6/midi.c 	    line6_rawmidi_substream_midi(substream)->line6;
line6             163 sound/usb/line6/midi.c 	line6->line6midi->substream_transmit = substream;
line6             164 sound/usb/line6/midi.c 	spin_lock_irqsave(&line6->line6midi->lock, flags);
line6             166 sound/usb/line6/midi.c 	if (line6->line6midi->num_active_send_urbs == 0)
line6             169 sound/usb/line6/midi.c 	spin_unlock_irqrestore(&line6->line6midi->lock, flags);
line6             174 sound/usb/line6/midi.c 	struct usb_line6 *line6 =
line6             175 sound/usb/line6/midi.c 	    line6_rawmidi_substream_midi(substream)->line6;
line6             176 sound/usb/line6/midi.c 	struct snd_line6_midi *midi = line6->line6midi;
line6             195 sound/usb/line6/midi.c 	struct usb_line6 *line6 =
line6             196 sound/usb/line6/midi.c 	    line6_rawmidi_substream_midi(substream)->line6;
line6             199 sound/usb/line6/midi.c 		line6->line6midi->substream_receive = substream;
line6             201 sound/usb/line6/midi.c 		line6->line6midi->substream_receive = NULL;
line6             218 sound/usb/line6/midi.c static int snd_line6_new_midi(struct usb_line6 *line6,
line6             224 sound/usb/line6/midi.c 	err = snd_rawmidi_new(line6->card, "Line 6 MIDI", 0, 1, 1, rmidi_ret);
line6             229 sound/usb/line6/midi.c 	strcpy(rmidi->id, line6->properties->id);
line6             230 sound/usb/line6/midi.c 	strcpy(rmidi->name, line6->properties->name);
line6             256 sound/usb/line6/midi.c int line6_init_midi(struct usb_line6 *line6)
line6             262 sound/usb/line6/midi.c 	if (!(line6->properties->capabilities & LINE6_CAP_CONTROL_MIDI)) {
line6             267 sound/usb/line6/midi.c 	err = snd_line6_new_midi(line6, &rmidi);
line6             280 sound/usb/line6/midi.c 	line6midi->line6 = line6;
line6             290 sound/usb/line6/midi.c 	line6->line6midi = line6midi;
line6              19 sound/usb/line6/midi.h 	struct usb_line6 *line6;
line6              43 sound/usb/line6/midi.h extern int line6_init_midi(struct usb_line6 *line6);
line6              44 sound/usb/line6/midi.h extern void line6_midi_receive(struct usb_line6 *line6, unsigned char *data,
line6             103 sound/usb/line6/pcm.c 	for (i = 0; i < line6pcm->line6->iso_buffers; i++) {
line6             123 sound/usb/line6/pcm.c 		for (i = 0; i < line6pcm->line6->iso_buffers; i++) {
line6             133 sound/usb/line6/pcm.c 		dev_err(line6pcm->line6->ifcdev,
line6             158 sound/usb/line6/pcm.c 			kmalloc(array3_size(line6pcm->line6->iso_buffers,
line6             244 sound/usb/line6/pcm.c 				(line6pcm->line6->properties->capabilities &
line6             260 sound/usb/line6/pcm.c 				(line6pcm->line6->properties->capabilities &
line6             480 sound/usb/line6/pcm.c 	cleanup_urbs(&line6pcm->out, line6pcm->line6->iso_buffers);
line6             481 sound/usb/line6/pcm.c 	cleanup_urbs(&line6pcm->in, line6pcm->line6->iso_buffers);
line6             486 sound/usb/line6/pcm.c static int snd_line6_new_pcm(struct usb_line6 *line6, struct snd_pcm **pcm_ret)
line6             491 sound/usb/line6/pcm.c 	err = snd_pcm_new(line6->card, (char *)line6->properties->name,
line6             496 sound/usb/line6/pcm.c 	strcpy(pcm->name, line6->properties->name);
line6             526 sound/usb/line6/pcm.c int line6_init_pcm(struct usb_line6 *line6,
line6             530 sound/usb/line6/pcm.c 	unsigned ep_read = line6->properties->ep_audio_r;
line6             531 sound/usb/line6/pcm.c 	unsigned ep_write = line6->properties->ep_audio_w;
line6             535 sound/usb/line6/pcm.c 	if (!(line6->properties->capabilities & LINE6_CAP_PCM))
line6             538 sound/usb/line6/pcm.c 	err = snd_line6_new_pcm(line6, &pcm);
line6             551 sound/usb/line6/pcm.c 	line6pcm->line6 = line6;
line6             557 sound/usb/line6/pcm.c 	line6->line6pcm = line6pcm;
line6             563 sound/usb/line6/pcm.c 		usb_maxpacket(line6->usbdev,
line6             564 sound/usb/line6/pcm.c 			usb_rcvisocpipe(line6->usbdev, ep_read), 0);
line6             566 sound/usb/line6/pcm.c 		usb_maxpacket(line6->usbdev,
line6             567 sound/usb/line6/pcm.c 			usb_sndisocpipe(line6->usbdev, ep_write), 1);
line6             569 sound/usb/line6/pcm.c 		dev_err(line6pcm->line6->ifcdev,
line6             584 sound/usb/line6/pcm.c 		err = snd_ctl_add(line6->card,
line6             138 sound/usb/line6/pcm.h 	struct usb_line6 *line6;
line6             182 sound/usb/line6/pcm.h extern int line6_init_pcm(struct usb_line6 *line6,
line6             152 sound/usb/line6/playback.c 		(line6pcm->line6->intervals_per_second / LINE6_ISO_INTERVAL);
line6             156 sound/usb/line6/playback.c 				    line6pcm->line6->iso_buffers);
line6             158 sound/usb/line6/playback.c 	if (index < 0 || index >= line6pcm->line6->iso_buffers) {
line6             159 sound/usb/line6/playback.c 		dev_err(line6pcm->line6->ifcdev, "no free URB found\n");
line6             192 sound/usb/line6/playback.c 		dev_err(line6pcm->line6->ifcdev, "driver bug: urb_size = 0\n");
line6             226 sound/usb/line6/playback.c 				dev_err(line6pcm->line6->ifcdev, "driver bug: len = %d\n",
line6             260 sound/usb/line6/playback.c 			if (!(line6pcm->line6->properties->capabilities & LINE6_CAP_HWMON)
line6             276 sound/usb/line6/playback.c 		dev_err(line6pcm->line6->ifcdev,
line6             290 sound/usb/line6/playback.c 	for (i = 0; i < line6pcm->line6->iso_buffers; ++i) {
line6             320 sound/usb/line6/playback.c 	for (index = 0; index < line6pcm->line6->iso_buffers; index++)
line6             324 sound/usb/line6/playback.c 	if (index >= line6pcm->line6->iso_buffers)
line6             405 sound/usb/line6/playback.c 	struct usb_line6 *line6 = line6pcm->line6;
line6             408 sound/usb/line6/playback.c 	line6pcm->out.urbs = kcalloc(line6->iso_buffers, sizeof(struct urb *),
line6             414 sound/usb/line6/playback.c 	for (i = 0; i < line6->iso_buffers; ++i) {
line6             424 sound/usb/line6/playback.c 		urb->dev = line6->usbdev;
line6             426 sound/usb/line6/playback.c 		    usb_sndisocpipe(line6->usbdev,
line6             427 sound/usb/line6/playback.c 				    line6->properties->ep_audio_w &
line6              55 sound/usb/line6/pod.c 	struct usb_line6 line6;
line6              73 sound/usb/line6/pod.c #define line6_to_pod(x)		container_of(x, struct usb_line6_pod, line6)
line6             169 sound/usb/line6/pod.c 	return line6_alloc_sysex_buffer(&pod->line6, POD_SYSEX_CODE, code,
line6             176 sound/usb/line6/pod.c static void line6_pod_process_message(struct usb_line6 *line6)
line6             178 sound/usb/line6/pod.c 	struct usb_line6_pod *pod = line6_to_pod(line6);
line6             179 sound/usb/line6/pod.c 	const unsigned char *buf = pod->line6.buffer_message;
line6             187 sound/usb/line6/pod.c 			schedule_delayed_work(&line6->startup_work, 0);
line6             224 sound/usb/line6/pod.c 	line6_send_sysex_message(&pod->line6, sysex, size);
line6             273 sound/usb/line6/pod.c static void pod_startup(struct usb_line6 *line6)
line6             275 sound/usb/line6/pod.c 	struct usb_line6_pod *pod = line6_to_pod(line6);
line6             280 sound/usb/line6/pod.c 		line6_version_request_async(line6);
line6             284 sound/usb/line6/pod.c 		line6_read_serial_number(&pod->line6, &pod->serial_number);
line6             287 sound/usb/line6/pod.c 		if (snd_card_register(line6->card))
line6             288 sound/usb/line6/pod.c 			dev_err(line6->ifcdev, "Failed to register POD card.\n");
line6             329 sound/usb/line6/pod.c 	struct usb_line6_pod *pod = line6_to_pod(line6pcm->line6);
line6             340 sound/usb/line6/pod.c 	struct usb_line6_pod *pod = line6_to_pod(line6pcm->line6);
line6             365 sound/usb/line6/pod.c static int pod_init(struct usb_line6 *line6,
line6             369 sound/usb/line6/pod.c 	struct usb_line6_pod *pod = line6_to_pod(line6);
line6             371 sound/usb/line6/pod.c 	line6->process_message = line6_pod_process_message;
line6             372 sound/usb/line6/pod.c 	line6->startup = pod_startup;
line6             375 sound/usb/line6/pod.c 	err = snd_card_add_dev_attr(line6->card, &pod_dev_attr_group);
line6             380 sound/usb/line6/pod.c 	err = line6_init_midi(line6);
line6             385 sound/usb/line6/pod.c 	err = line6_init_pcm(line6, &pod_pcm_properties);
line6             390 sound/usb/line6/pod.c 	err = snd_ctl_add(line6->card,
line6             391 sound/usb/line6/pod.c 			  snd_ctl_new1(&pod_control_monitor, line6->line6pcm));
line6             401 sound/usb/line6/pod.c 	if (pod->line6.properties->capabilities & LINE6_CAP_CONTROL) {
line6             405 sound/usb/line6/pod.c 		schedule_delayed_work(&line6->startup_work,
line6              33 sound/usb/line6/podhd.c 	struct usb_line6 line6;
line6              42 sound/usb/line6/podhd.c #define line6_to_podhd(x)	container_of(x, struct usb_line6_podhd, line6)
line6             184 sound/usb/line6/podhd.c 	struct usb_device *usbdev = pod->line6.usbdev;
line6             195 sound/usb/line6/podhd.c 		dev_err(pod->line6.ifcdev, "read request failed (error %d)\n", ret);
line6             205 sound/usb/line6/podhd.c 		dev_err(pod->line6.ifcdev,
line6             214 sound/usb/line6/podhd.c 		ret = line6_read_data(&pod->line6, 0xf000 + 0x08 * i, init_bytes, 8);
line6             229 sound/usb/line6/podhd.c static void podhd_startup(struct usb_line6 *line6)
line6             231 sound/usb/line6/podhd.c 	struct usb_line6_podhd *pod = line6_to_podhd(line6);
line6             234 sound/usb/line6/podhd.c 	line6_read_serial_number(&pod->line6, &pod->serial_number);
line6             235 sound/usb/line6/podhd.c 	if (snd_card_register(line6->card))
line6             236 sound/usb/line6/podhd.c 		dev_err(line6->ifcdev, "Failed to register POD HD card.\n");
line6             239 sound/usb/line6/podhd.c static void podhd_disconnect(struct usb_line6 *line6)
line6             241 sound/usb/line6/podhd.c 	struct usb_line6_podhd *pod = line6_to_podhd(line6);
line6             243 sound/usb/line6/podhd.c 	if (pod->line6.properties->capabilities & LINE6_CAP_CONTROL_INFO) {
line6             246 sound/usb/line6/podhd.c 		intf = usb_ifnum_to_if(line6->usbdev,
line6             247 sound/usb/line6/podhd.c 					pod->line6.properties->ctrl_if);
line6             256 sound/usb/line6/podhd.c static int podhd_init(struct usb_line6 *line6,
line6             260 sound/usb/line6/podhd.c 	struct usb_line6_podhd *pod = line6_to_podhd(line6);
line6             263 sound/usb/line6/podhd.c 	line6->disconnect = podhd_disconnect;
line6             264 sound/usb/line6/podhd.c 	line6->startup = podhd_startup;
line6             266 sound/usb/line6/podhd.c 	if (pod->line6.properties->capabilities & LINE6_CAP_CONTROL) {
line6             268 sound/usb/line6/podhd.c 		intf = usb_ifnum_to_if(line6->usbdev,
line6             269 sound/usb/line6/podhd.c 					pod->line6.properties->ctrl_if);
line6             271 sound/usb/line6/podhd.c 			dev_err(pod->line6.ifcdev, "interface %d not found\n",
line6             272 sound/usb/line6/podhd.c 				pod->line6.properties->ctrl_if);
line6             278 sound/usb/line6/podhd.c 			dev_err(pod->line6.ifcdev, "can't claim interface %d, error %d\n",
line6             279 sound/usb/line6/podhd.c 				pod->line6.properties->ctrl_if, err);
line6             284 sound/usb/line6/podhd.c 	if (pod->line6.properties->capabilities & LINE6_CAP_CONTROL_INFO) {
line6             286 sound/usb/line6/podhd.c 		err = snd_card_add_dev_attr(line6->card, &podhd_dev_attr_group);
line6             291 sound/usb/line6/podhd.c 	if (pod->line6.properties->capabilities & LINE6_CAP_PCM) {
line6             293 sound/usb/line6/podhd.c 		err = line6_init_pcm(line6,
line6             301 sound/usb/line6/podhd.c 	if (!(pod->line6.properties->capabilities & LINE6_CAP_CONTROL_INFO)) {
line6             303 sound/usb/line6/podhd.c 		return snd_card_register(line6->card);
line6             307 sound/usb/line6/podhd.c 	schedule_delayed_work(&line6->startup_work,
line6              42 sound/usb/line6/toneport.c 	struct usb_line6 line6;
line6              60 sound/usb/line6/toneport.c #define line6_to_toneport(x) container_of(x, struct usb_line6_toneport, line6)
line6             212 sound/usb/line6/toneport.c 	struct usb_line6_toneport *toneport = line6_to_toneport(line6pcm->line6);
line6             223 sound/usb/line6/toneport.c 	struct usb_line6_toneport *toneport = line6_to_toneport(line6pcm->line6);
line6             233 sound/usb/line6/toneport.c 	toneport_send_cmd(toneport->line6.usbdev,
line6             238 sound/usb/line6/toneport.c static void toneport_startup(struct usb_line6 *line6)
line6             240 sound/usb/line6/toneport.c 	line6_pcm_acquire(line6->line6pcm, LINE6_STREAM_MONITOR, true);
line6             290 sound/usb/line6/toneport.c 	toneport_send_cmd(toneport->line6.usbdev,
line6             305 sound/usb/line6/toneport.c 	struct device *dev = &toneport->line6.usbdev->dev;
line6             362 sound/usb/line6/toneport.c 	struct usb_line6 *line6 = &toneport->line6;
line6             363 sound/usb/line6/toneport.c 	struct usb_device *usbdev = line6->usbdev;
line6             372 sound/usb/line6/toneport.c 	line6_write_data(line6, 0x80c6, ticks, 4);
line6             387 sound/usb/line6/toneport.c 	schedule_delayed_work(&toneport->line6.startup_work,
line6             395 sound/usb/line6/toneport.c static void line6_toneport_disconnect(struct usb_line6 *line6)
line6             397 sound/usb/line6/toneport.c 	struct usb_line6_toneport *toneport = line6_to_toneport(line6);
line6             407 sound/usb/line6/toneport.c static int toneport_init(struct usb_line6 *line6,
line6             411 sound/usb/line6/toneport.c 	struct usb_line6_toneport *toneport = line6_to_toneport(line6);
line6             415 sound/usb/line6/toneport.c 	line6->disconnect = line6_toneport_disconnect;
line6             416 sound/usb/line6/toneport.c 	line6->startup = toneport_startup;
line6             419 sound/usb/line6/toneport.c 	err = line6_init_pcm(line6, &toneport_pcm_properties);
line6             424 sound/usb/line6/toneport.c 	err = snd_ctl_add(line6->card,
line6             426 sound/usb/line6/toneport.c 				       line6->line6pcm));
line6             433 sound/usb/line6/toneport.c 		    snd_ctl_add(line6->card,
line6             435 sound/usb/line6/toneport.c 					     line6->line6pcm));
line6             440 sound/usb/line6/toneport.c 	line6_read_serial_number(line6, &toneport->serial_number);
line6             441 sound/usb/line6/toneport.c 	line6_read_data(line6, 0x80c2, &toneport->firmware_version, 1);
line6             454 sound/usb/line6/toneport.c 	return snd_card_register(line6->card);
line6              37 sound/usb/line6/variax.c 	struct usb_line6 line6;
line6              46 sound/usb/line6/variax.c #define line6_to_variax(x)	container_of(x, struct usb_line6_variax, line6)
line6              74 sound/usb/line6/variax.c 	line6_send_raw_message_async(&variax->line6, variax->buffer_activate,
line6              85 sound/usb/line6/variax.c static void variax_startup(struct usb_line6 *line6)
line6              87 sound/usb/line6/variax.c 	struct usb_line6_variax *variax = line6_to_variax(line6);
line6              92 sound/usb/line6/variax.c 		schedule_delayed_work(&line6->startup_work,
line6              95 sound/usb/line6/variax.c 		line6_version_request_async(line6);
line6             101 sound/usb/line6/variax.c 		schedule_delayed_work(&line6->startup_work,
line6             106 sound/usb/line6/variax.c 		snd_card_register(variax->line6.card);
line6             114 sound/usb/line6/variax.c static void line6_variax_process_message(struct usb_line6 *line6)
line6             116 sound/usb/line6/variax.c 	struct usb_line6_variax *variax = line6_to_variax(line6);
line6             117 sound/usb/line6/variax.c 	const unsigned char *buf = variax->line6.buffer_message;
line6             121 sound/usb/line6/variax.c 		dev_info(variax->line6.ifcdev, "VARIAX reset\n");
line6             130 sound/usb/line6/variax.c 			cancel_delayed_work(&line6->startup_work);
line6             131 sound/usb/line6/variax.c 			schedule_delayed_work(&line6->startup_work,
line6             138 sound/usb/line6/variax.c 			cancel_delayed_work(&line6->startup_work);
line6             139 sound/usb/line6/variax.c 			schedule_delayed_work(&line6->startup_work, 0);
line6             148 sound/usb/line6/variax.c static void line6_variax_disconnect(struct usb_line6 *line6)
line6             150 sound/usb/line6/variax.c 	struct usb_line6_variax *variax = line6_to_variax(line6);
line6             158 sound/usb/line6/variax.c static int variax_init(struct usb_line6 *line6,
line6             161 sound/usb/line6/variax.c 	struct usb_line6_variax *variax = line6_to_variax(line6);
line6             164 sound/usb/line6/variax.c 	line6->process_message = line6_variax_process_message;
line6             165 sound/usb/line6/variax.c 	line6->disconnect = line6_variax_disconnect;
line6             166 sound/usb/line6/variax.c 	line6->startup = variax_startup;
line6             176 sound/usb/line6/variax.c 	err = line6_init_midi(&variax->line6);
line6             181 sound/usb/line6/variax.c 	schedule_delayed_work(&line6->startup_work,