Lines Matching refs:usx2y

167 		struct usx2ydev *usx2y = urb->context;  in i_usx2y_out04_int()  local
168 for (i = 0; i < 10 && usx2y->as04.urb[i] != urb; i++); in i_usx2y_out04_int()
177 struct usx2ydev *usx2y = urb->context; in i_usx2y_in04_int() local
178 struct us428ctls_sharedmem *us428ctls = usx2y->us428ctls_sharedmem; in i_usx2y_in04_int()
180 usx2y->in04_int_calls++; in i_usx2y_in04_int()
192 memcpy(usx2y->in04_last, usx2y->in04_buf, sizeof(usx2y->in04_last)); in i_usx2y_in04_int()
197 if (usx2y->in04_last[i] != ((char*)usx2y->in04_buf)[i]) { in i_usx2y_in04_int()
200 usx2y->in04_last[i] = ((char*)usx2y->in04_buf)[i]; in i_usx2y_in04_int()
208 memcpy(us428ctls->ctl_snapshot + n, usx2y->in04_buf, sizeof(us428ctls->ctl_snapshot[0])); in i_usx2y_in04_int()
211 wake_up(&usx2y->us428ctls_wait_queue_head); in i_usx2y_in04_int()
216 if (usx2y->us04) { in i_usx2y_in04_int()
217 if (0 == usx2y->us04->submitted) in i_usx2y_in04_int()
219 err = usb_submit_urb(usx2y->us04->urb[usx2y->us04->submitted++], GFP_ATOMIC); in i_usx2y_in04_int()
220 } while (!err && usx2y->us04->submitted < usx2y->us04->len); in i_usx2y_in04_int()
228 if (0 == usx2y->as04.urb[j]->status) { in i_usx2y_in04_int()
230 usb_fill_bulk_urb(usx2y->as04.urb[j], usx2y->dev, in i_usx2y_in04_int()
231 usb_sndbulkpipe(usx2y->dev, 0x04), &p4out->val.vol, in i_usx2y_in04_int()
233 i_usx2y_out04_int, usx2y); in i_usx2y_in04_int()
234 err = usb_submit_urb(usx2y->as04.urb[j], GFP_ATOMIC); in i_usx2y_in04_int()
244 urb->dev = usx2y->dev; in i_usx2y_in04_int()
251 int usx2y_async_seq04_init(struct usx2ydev *usx2y) in usx2y_async_seq04_init() argument
256 usx2y->as04.buffer = kmalloc_array(URBS_ASYNC_SEQ, in usx2y_async_seq04_init()
258 if (NULL == usx2y->as04.buffer) { in usx2y_async_seq04_init()
262 if (NULL == (usx2y->as04.urb[i] = usb_alloc_urb(0, GFP_KERNEL))) { in usx2y_async_seq04_init()
266 usb_fill_bulk_urb( usx2y->as04.urb[i], usx2y->dev, in usx2y_async_seq04_init()
267 usb_sndbulkpipe(usx2y->dev, 0x04), in usx2y_async_seq04_init()
268 usx2y->as04.buffer + URB_DATA_LEN_ASYNC_SEQ*i, 0, in usx2y_async_seq04_init()
269 i_usx2y_out04_int, usx2y in usx2y_async_seq04_init()
271 err = usb_urb_ep_type_check(usx2y->as04.urb[i]); in usx2y_async_seq04_init()
278 int usx2y_in04_init(struct usx2ydev *usx2y) in usx2y_in04_init() argument
280 if (! (usx2y->in04_urb = usb_alloc_urb(0, GFP_KERNEL))) in usx2y_in04_init()
283 if (! (usx2y->in04_buf = kmalloc(21, GFP_KERNEL))) in usx2y_in04_init()
286 init_waitqueue_head(&usx2y->in04_wait_queue); in usx2y_in04_init()
287 usb_fill_int_urb(usx2y->in04_urb, usx2y->dev, usb_rcvintpipe(usx2y->dev, 0x4), in usx2y_in04_init()
288 usx2y->in04_buf, 21, in usx2y_in04_init()
289 i_usx2y_in04_int, usx2y, in usx2y_in04_init()
291 if (usb_urb_ep_type_check(usx2y->in04_urb)) in usx2y_in04_init()
293 return usb_submit_urb(usx2y->in04_urb, GFP_KERNEL); in usx2y_in04_init()
344 snd_usx2y_card_used[usx2y(card)->card_index = dev] = 1; in usx2y_create_card()
346 usx2y(card)->dev = device; in usx2y_create_card()
347 init_waitqueue_head(&usx2y(card)->prepare_wait_queue); in usx2y_create_card()
348 mutex_init(&usx2y(card)->pcm_mutex); in usx2y_create_card()
349 INIT_LIST_HEAD(&usx2y(card)->midi_list); in usx2y_create_card()
357 usx2y(card)->dev->bus->busnum, usx2y(card)->dev->devnum in usx2y_create_card()
422 kfree(usx2y(card)->in04_buf); in snd_usx2y_card_private_free()
423 usb_free_urb(usx2y(card)->in04_urb); in snd_usx2y_card_private_free()
424 if (usx2y(card)->us428ctls_sharedmem) in snd_usx2y_card_private_free()
425 free_pages_exact(usx2y(card)->us428ctls_sharedmem, in snd_usx2y_card_private_free()
426 sizeof(*usx2y(card)->us428ctls_sharedmem)); in snd_usx2y_card_private_free()
427 if (usx2y(card)->card_index >= 0 && usx2y(card)->card_index < SNDRV_CARDS) in snd_usx2y_card_private_free()
428 snd_usx2y_card_used[usx2y(card)->card_index] = 0; in snd_usx2y_card_private_free()
438 struct usx2ydev *usx2y = usx2y(card); in usx2y_usb_disconnect() local
440 usx2y->chip_status = USX2Y_STAT_CHIP_HUP; in usx2y_usb_disconnect()
441 usx2y_unlinkseq(&usx2y->as04); in usx2y_usb_disconnect()
442 usb_kill_urb(usx2y->in04_urb); in usx2y_usb_disconnect()
445 list_for_each(p, &usx2y->midi_list) { in usx2y_usb_disconnect()
448 if (usx2y->us428ctls_sharedmem) in usx2y_usb_disconnect()
449 wake_up(&usx2y->us428ctls_wait_queue_head); in usx2y_usb_disconnect()