• Home
  • Raw
  • Download

Lines Matching refs:intr

361 	struct zd_usb_interrupt *intr = &usb->intr;  in handle_regs_int_override()  local
364 spin_lock_irqsave(&intr->lock, flags); in handle_regs_int_override()
365 if (atomic_read(&intr->read_regs_enabled)) { in handle_regs_int_override()
366 atomic_set(&intr->read_regs_enabled, 0); in handle_regs_int_override()
367 intr->read_regs_int_overridden = 1; in handle_regs_int_override()
368 complete(&intr->read_regs.completion); in handle_regs_int_override()
370 spin_unlock_irqrestore(&intr->lock, flags); in handle_regs_int_override()
376 struct zd_usb_interrupt *intr = &usb->intr; in handle_regs_int() local
382 spin_lock_irqsave(&intr->lock, flags); in handle_regs_int()
392 } else if (atomic_read(&intr->read_regs_enabled)) { in handle_regs_int()
394 intr->read_regs.length = urb->actual_length; in handle_regs_int()
395 if (len > sizeof(intr->read_regs.buffer)) in handle_regs_int()
396 len = sizeof(intr->read_regs.buffer); in handle_regs_int()
398 memcpy(intr->read_regs.buffer, urb->transfer_buffer, len); in handle_regs_int()
406 if (!check_read_regs(usb, intr->read_regs.req, in handle_regs_int()
407 intr->read_regs.req_count)) in handle_regs_int()
410 atomic_set(&intr->read_regs_enabled, 0); in handle_regs_int()
411 intr->read_regs_int_overridden = 0; in handle_regs_int()
412 complete(&intr->read_regs.completion); in handle_regs_int()
418 spin_unlock_irqrestore(&intr->lock, flags); in handle_regs_int()
421 if (int_num == CR_INTERRUPT && atomic_read(&intr->read_regs_enabled)) in handle_regs_int()
430 struct zd_usb_interrupt *intr; in int_urb_complete() local
463 intr = &usb->intr; in int_urb_complete()
464 if (hdr->id != USB_INT_ID_REGS && atomic_read(&intr->read_regs_enabled)) in int_urb_complete()
506 struct zd_usb_interrupt *intr = &usb->intr; in usb_int_enabled() local
509 spin_lock_irqsave(&intr->lock, flags); in usb_int_enabled()
510 urb = intr->urb; in usb_int_enabled()
511 spin_unlock_irqrestore(&intr->lock, flags); in usb_int_enabled()
519 struct zd_usb_interrupt *intr = &usb->intr; in zd_usb_enable_int() local
531 spin_lock_irq(&intr->lock); in zd_usb_enable_int()
532 if (intr->urb) { in zd_usb_enable_int()
533 spin_unlock_irq(&intr->lock); in zd_usb_enable_int()
537 intr->urb = urb; in zd_usb_enable_int()
538 spin_unlock_irq(&intr->lock); in zd_usb_enable_int()
541 intr->buffer = usb_alloc_coherent(udev, USB_MAX_EP_INT_BUFFER, in zd_usb_enable_int()
542 GFP_KERNEL, &intr->buffer_dma); in zd_usb_enable_int()
543 if (!intr->buffer) { in zd_usb_enable_int()
550 intr->buffer, USB_MAX_EP_INT_BUFFER, in zd_usb_enable_int()
552 intr->interval); in zd_usb_enable_int()
553 urb->transfer_dma = intr->buffer_dma; in zd_usb_enable_int()
556 dev_dbg_f(zd_usb_dev(usb), "submit urb %p\n", intr->urb); in zd_usb_enable_int()
567 intr->buffer, intr->buffer_dma); in zd_usb_enable_int()
569 spin_lock_irq(&intr->lock); in zd_usb_enable_int()
570 intr->urb = NULL; in zd_usb_enable_int()
571 spin_unlock_irq(&intr->lock); in zd_usb_enable_int()
582 struct zd_usb_interrupt *intr = &usb->intr; in zd_usb_disable_int() local
587 spin_lock_irqsave(&intr->lock, flags); in zd_usb_disable_int()
588 urb = intr->urb; in zd_usb_disable_int()
590 spin_unlock_irqrestore(&intr->lock, flags); in zd_usb_disable_int()
593 intr->urb = NULL; in zd_usb_disable_int()
594 buffer = intr->buffer; in zd_usb_disable_int()
595 buffer_dma = intr->buffer_dma; in zd_usb_disable_int()
596 intr->buffer = NULL; in zd_usb_disable_int()
597 spin_unlock_irqrestore(&intr->lock, flags); in zd_usb_disable_int()
1161 struct zd_usb_interrupt *intr = &usb->intr; in init_usb_interrupt() local
1163 spin_lock_init(&intr->lock); in init_usb_interrupt()
1164 intr->interval = int_urb_interval(zd_usb_to_usbdev(usb)); in init_usb_interrupt()
1165 init_completion(&intr->read_regs.completion); in init_usb_interrupt()
1166 atomic_set(&intr->read_regs_enabled, 0); in init_usb_interrupt()
1167 intr->read_regs.cr_int_addr = cpu_to_le16((u16)CR_INTERRUPT); in init_usb_interrupt()
1604 struct zd_usb_interrupt *intr = &usb->intr; in prepare_read_regs_int() local
1606 spin_lock_irq(&intr->lock); in prepare_read_regs_int()
1607 atomic_set(&intr->read_regs_enabled, 1); in prepare_read_regs_int()
1608 intr->read_regs.req = req; in prepare_read_regs_int()
1609 intr->read_regs.req_count = count; in prepare_read_regs_int()
1610 reinit_completion(&intr->read_regs.completion); in prepare_read_regs_int()
1611 spin_unlock_irq(&intr->lock); in prepare_read_regs_int()
1616 struct zd_usb_interrupt *intr = &usb->intr; in disable_read_regs_int() local
1618 spin_lock_irq(&intr->lock); in disable_read_regs_int()
1619 atomic_set(&intr->read_regs_enabled, 0); in disable_read_regs_int()
1620 spin_unlock_irq(&intr->lock); in disable_read_regs_int()
1627 struct zd_usb_interrupt *intr = &usb->intr; in check_read_regs() local
1628 struct read_regs_int *rr = &intr->read_regs; in check_read_regs()
1668 struct zd_usb_interrupt *intr = &usb->intr; in get_results() local
1669 struct read_regs_int *rr = &intr->read_regs; in get_results()
1672 spin_lock_irq(&intr->lock); in get_results()
1677 *retry = !!intr->read_regs_int_overridden; in get_results()
1693 spin_unlock_irq(&intr->lock); in get_results()
1758 timeout = wait_for_completion_timeout(&usb->intr.read_regs.completion, in zd_usb_ioread16v()