Lines Matching refs:intr

373 	struct zd_usb_interrupt *intr = &usb->intr;  in handle_regs_int_override()  local
376 spin_lock_irqsave(&intr->lock, flags); in handle_regs_int_override()
377 if (atomic_read(&intr->read_regs_enabled)) { in handle_regs_int_override()
378 atomic_set(&intr->read_regs_enabled, 0); in handle_regs_int_override()
379 intr->read_regs_int_overridden = 1; in handle_regs_int_override()
380 complete(&intr->read_regs.completion); in handle_regs_int_override()
382 spin_unlock_irqrestore(&intr->lock, flags); in handle_regs_int_override()
388 struct zd_usb_interrupt *intr = &usb->intr; in handle_regs_int() local
394 spin_lock_irqsave(&intr->lock, flags); in handle_regs_int()
404 } else if (atomic_read(&intr->read_regs_enabled)) { in handle_regs_int()
406 intr->read_regs.length = urb->actual_length; in handle_regs_int()
407 if (len > sizeof(intr->read_regs.buffer)) in handle_regs_int()
408 len = sizeof(intr->read_regs.buffer); in handle_regs_int()
410 memcpy(intr->read_regs.buffer, urb->transfer_buffer, len); in handle_regs_int()
418 if (!check_read_regs(usb, intr->read_regs.req, in handle_regs_int()
419 intr->read_regs.req_count)) in handle_regs_int()
422 atomic_set(&intr->read_regs_enabled, 0); in handle_regs_int()
423 intr->read_regs_int_overridden = 0; in handle_regs_int()
424 complete(&intr->read_regs.completion); in handle_regs_int()
430 spin_unlock_irqrestore(&intr->lock, flags); in handle_regs_int()
433 if (int_num == CR_INTERRUPT && atomic_read(&intr->read_regs_enabled)) in handle_regs_int()
442 struct zd_usb_interrupt *intr; in int_urb_complete() local
475 intr = &usb->intr; in int_urb_complete()
476 if (hdr->id != USB_INT_ID_REGS && atomic_read(&intr->read_regs_enabled)) in int_urb_complete()
518 struct zd_usb_interrupt *intr = &usb->intr; in usb_int_enabled() local
521 spin_lock_irqsave(&intr->lock, flags); in usb_int_enabled()
522 urb = intr->urb; in usb_int_enabled()
523 spin_unlock_irqrestore(&intr->lock, flags); in usb_int_enabled()
531 struct zd_usb_interrupt *intr = &usb->intr; in zd_usb_enable_int() local
543 spin_lock_irq(&intr->lock); in zd_usb_enable_int()
544 if (intr->urb) { in zd_usb_enable_int()
545 spin_unlock_irq(&intr->lock); in zd_usb_enable_int()
549 intr->urb = urb; in zd_usb_enable_int()
550 spin_unlock_irq(&intr->lock); in zd_usb_enable_int()
553 intr->buffer = usb_alloc_coherent(udev, USB_MAX_EP_INT_BUFFER, in zd_usb_enable_int()
554 GFP_KERNEL, &intr->buffer_dma); in zd_usb_enable_int()
555 if (!intr->buffer) { in zd_usb_enable_int()
562 intr->buffer, USB_MAX_EP_INT_BUFFER, in zd_usb_enable_int()
564 intr->interval); in zd_usb_enable_int()
565 urb->transfer_dma = intr->buffer_dma; in zd_usb_enable_int()
568 dev_dbg_f(zd_usb_dev(usb), "submit urb %p\n", intr->urb); in zd_usb_enable_int()
579 intr->buffer, intr->buffer_dma); in zd_usb_enable_int()
581 spin_lock_irq(&intr->lock); in zd_usb_enable_int()
582 intr->urb = NULL; in zd_usb_enable_int()
583 spin_unlock_irq(&intr->lock); in zd_usb_enable_int()
594 struct zd_usb_interrupt *intr = &usb->intr; in zd_usb_disable_int() local
599 spin_lock_irqsave(&intr->lock, flags); in zd_usb_disable_int()
600 urb = intr->urb; in zd_usb_disable_int()
602 spin_unlock_irqrestore(&intr->lock, flags); in zd_usb_disable_int()
605 intr->urb = NULL; in zd_usb_disable_int()
606 buffer = intr->buffer; in zd_usb_disable_int()
607 buffer_dma = intr->buffer_dma; in zd_usb_disable_int()
608 intr->buffer = NULL; in zd_usb_disable_int()
609 spin_unlock_irqrestore(&intr->lock, flags); in zd_usb_disable_int()
1173 struct zd_usb_interrupt *intr = &usb->intr; in init_usb_interrupt() local
1175 spin_lock_init(&intr->lock); in init_usb_interrupt()
1176 intr->interval = int_urb_interval(zd_usb_to_usbdev(usb)); in init_usb_interrupt()
1177 init_completion(&intr->read_regs.completion); in init_usb_interrupt()
1178 atomic_set(&intr->read_regs_enabled, 0); in init_usb_interrupt()
1179 intr->read_regs.cr_int_addr = cpu_to_le16((u16)CR_INTERRUPT); in init_usb_interrupt()
1621 struct zd_usb_interrupt *intr = &usb->intr; in prepare_read_regs_int() local
1623 spin_lock_irq(&intr->lock); in prepare_read_regs_int()
1624 atomic_set(&intr->read_regs_enabled, 1); in prepare_read_regs_int()
1625 intr->read_regs.req = req; in prepare_read_regs_int()
1626 intr->read_regs.req_count = count; in prepare_read_regs_int()
1627 reinit_completion(&intr->read_regs.completion); in prepare_read_regs_int()
1628 spin_unlock_irq(&intr->lock); in prepare_read_regs_int()
1633 struct zd_usb_interrupt *intr = &usb->intr; in disable_read_regs_int() local
1635 spin_lock_irq(&intr->lock); in disable_read_regs_int()
1636 atomic_set(&intr->read_regs_enabled, 0); in disable_read_regs_int()
1637 spin_unlock_irq(&intr->lock); in disable_read_regs_int()
1644 struct zd_usb_interrupt *intr = &usb->intr; in check_read_regs() local
1645 struct read_regs_int *rr = &intr->read_regs; in check_read_regs()
1685 struct zd_usb_interrupt *intr = &usb->intr; in get_results() local
1686 struct read_regs_int *rr = &intr->read_regs; in get_results()
1689 spin_lock_irq(&intr->lock); in get_results()
1694 *retry = !!intr->read_regs_int_overridden; in get_results()
1710 spin_unlock_irq(&intr->lock); in get_results()
1775 timeout = wait_for_completion_timeout(&usb->intr.read_regs.completion, in zd_usb_ioread16v()