Lines Matching refs:adev
54 if (dev->adev.urb[i]) { in cx231xx_isoc_audio_deinit()
56 usb_kill_urb(dev->adev.urb[i]); in cx231xx_isoc_audio_deinit()
58 usb_unlink_urb(dev->adev.urb[i]); in cx231xx_isoc_audio_deinit()
60 usb_free_urb(dev->adev.urb[i]); in cx231xx_isoc_audio_deinit()
61 dev->adev.urb[i] = NULL; in cx231xx_isoc_audio_deinit()
63 kfree(dev->adev.transfer_buffer[i]); in cx231xx_isoc_audio_deinit()
64 dev->adev.transfer_buffer[i] = NULL; in cx231xx_isoc_audio_deinit()
78 if (dev->adev.urb[i]) { in cx231xx_bulk_audio_deinit()
80 usb_kill_urb(dev->adev.urb[i]); in cx231xx_bulk_audio_deinit()
82 usb_unlink_urb(dev->adev.urb[i]); in cx231xx_bulk_audio_deinit()
84 usb_free_urb(dev->adev.urb[i]); in cx231xx_bulk_audio_deinit()
85 dev->adev.urb[i] = NULL; in cx231xx_bulk_audio_deinit()
87 kfree(dev->adev.transfer_buffer[i]); in cx231xx_bulk_audio_deinit()
88 dev->adev.transfer_buffer[i] = NULL; in cx231xx_bulk_audio_deinit()
127 if (dev->adev.capture_pcm_substream) { in cx231xx_audio_isocirq()
128 substream = dev->adev.capture_pcm_substream; in cx231xx_audio_isocirq()
141 oldptr = dev->adev.hwptr_done_capture; in cx231xx_audio_isocirq()
157 dev->adev.hwptr_done_capture += length; in cx231xx_audio_isocirq()
158 if (dev->adev.hwptr_done_capture >= in cx231xx_audio_isocirq()
160 dev->adev.hwptr_done_capture -= in cx231xx_audio_isocirq()
163 dev->adev.capture_transfer_done += length; in cx231xx_audio_isocirq()
164 if (dev->adev.capture_transfer_done >= in cx231xx_audio_isocirq()
166 dev->adev.capture_transfer_done -= in cx231xx_audio_isocirq()
217 if (dev->adev.capture_pcm_substream) { in cx231xx_audio_bulkirq()
218 substream = dev->adev.capture_pcm_substream; in cx231xx_audio_bulkirq()
227 oldptr = dev->adev.hwptr_done_capture; in cx231xx_audio_bulkirq()
243 dev->adev.hwptr_done_capture += length; in cx231xx_audio_bulkirq()
244 if (dev->adev.hwptr_done_capture >= in cx231xx_audio_bulkirq()
246 dev->adev.hwptr_done_capture -= in cx231xx_audio_bulkirq()
249 dev->adev.capture_transfer_done += length; in cx231xx_audio_bulkirq()
250 if (dev->adev.capture_transfer_done >= in cx231xx_audio_bulkirq()
252 dev->adev.capture_transfer_done -= in cx231xx_audio_bulkirq()
283 sb_size = CX231XX_ISO_NUM_AUDIO_PACKETS * dev->adev.max_pkt_size; in cx231xx_init_audio_isoc()
289 dev->adev.transfer_buffer[i] = kmalloc(sb_size, GFP_ATOMIC); in cx231xx_init_audio_isoc()
290 if (!dev->adev.transfer_buffer[i]) in cx231xx_init_audio_isoc()
293 memset(dev->adev.transfer_buffer[i], 0x80, sb_size); in cx231xx_init_audio_isoc()
298 usb_free_urb(dev->adev.urb[j]); in cx231xx_init_audio_isoc()
299 kfree(dev->adev.transfer_buffer[j]); in cx231xx_init_audio_isoc()
307 dev->adev.end_point_addr); in cx231xx_init_audio_isoc()
309 urb->transfer_buffer = dev->adev.transfer_buffer[i]; in cx231xx_init_audio_isoc()
316 j++, k += dev->adev.max_pkt_size) { in cx231xx_init_audio_isoc()
318 urb->iso_frame_desc[j].length = dev->adev.max_pkt_size; in cx231xx_init_audio_isoc()
320 dev->adev.urb[i] = urb; in cx231xx_init_audio_isoc()
324 errCode = usb_submit_urb(dev->adev.urb[i], GFP_ATOMIC); in cx231xx_init_audio_isoc()
345 sb_size = CX231XX_NUM_AUDIO_PACKETS * dev->adev.max_pkt_size; in cx231xx_init_audio_bulk()
351 dev->adev.transfer_buffer[i] = kmalloc(sb_size, GFP_ATOMIC); in cx231xx_init_audio_bulk()
352 if (!dev->adev.transfer_buffer[i]) in cx231xx_init_audio_bulk()
355 memset(dev->adev.transfer_buffer[i], 0x80, sb_size); in cx231xx_init_audio_bulk()
360 usb_free_urb(dev->adev.urb[j]); in cx231xx_init_audio_bulk()
361 kfree(dev->adev.transfer_buffer[j]); in cx231xx_init_audio_bulk()
369 dev->adev.end_point_addr); in cx231xx_init_audio_bulk()
371 urb->transfer_buffer = dev->adev.transfer_buffer[i]; in cx231xx_init_audio_bulk()
375 dev->adev.urb[i] = urb; in cx231xx_init_audio_bulk()
380 errCode = usb_submit_urb(dev->adev.urb[i], GFP_ATOMIC); in cx231xx_init_audio_bulk()
469 dev->adev.users++; in snd_cx231xx_capture_open()
473 dev->adev.capture_pcm_substream = substream; in snd_cx231xx_capture_open()
501 dev->adev.users--; in snd_cx231xx_pcm_close()
504 if (dev->adev.users == 0 && dev->adev.shutdown == 1) { in snd_cx231xx_pcm_close()
505 dev_dbg(dev->dev, "audio users: %d\n", dev->adev.users); in snd_cx231xx_pcm_close()
507 dev->adev.shutdown = 0; in snd_cx231xx_pcm_close()
559 dev->adev.hwptr_done_capture = 0; in snd_cx231xx_prepare()
560 dev->adev.capture_transfer_done = 0; in snd_cx231xx_prepare()
592 spin_lock(&dev->adev.slock); in snd_cx231xx_capture_trigger()
604 spin_unlock(&dev->adev.slock); in snd_cx231xx_capture_trigger()
620 spin_lock_irqsave(&dev->adev.slock, flags); in snd_cx231xx_capture_pointer()
621 hwptr_done = dev->adev.hwptr_done_capture; in snd_cx231xx_capture_pointer()
622 spin_unlock_irqrestore(&dev->adev.slock, flags); in snd_cx231xx_capture_pointer()
649 struct cx231xx_audio *adev = &dev->adev; in cx231xx_audio_init() local
672 spin_lock_init(&adev->slock); in cx231xx_audio_init()
695 adev->sndcard = card; in cx231xx_audio_init()
696 adev->udev = dev->udev; in cx231xx_audio_init()
704 adev->end_point_addr = in cx231xx_audio_init()
708 adev->num_alt = uif->num_altsetting; in cx231xx_audio_init()
711 adev->end_point_addr, adev->num_alt); in cx231xx_audio_init()
712 adev->alt_max_pkt_size = kmalloc(32 * adev->num_alt, GFP_KERNEL); in cx231xx_audio_init()
714 if (adev->alt_max_pkt_size == NULL) in cx231xx_audio_init()
717 for (i = 0; i < adev->num_alt; i++) { in cx231xx_audio_init()
721 adev->alt_max_pkt_size[i] = in cx231xx_audio_init()
725 adev->alt_max_pkt_size[i]); in cx231xx_audio_init()
743 if (dev->adev.sndcard) { in cx231xx_audio_fini()
744 snd_card_free(dev->adev.sndcard); in cx231xx_audio_fini()
745 kfree(dev->adev.alt_max_pkt_size); in cx231xx_audio_fini()
746 dev->adev.sndcard = NULL; in cx231xx_audio_fini()