Lines Matching refs:urbs

96 	struct urb_list urbs;  member
1112 if (dev->urbs.count > 0) in ufx_free()
1125 up(&unode->dev->urbs.limit_sem); in ufx_release_urb_work()
1792 urb->transfer_buffer_length = dev->urbs.size; /* reset to actual */ in ufx_urb_completion()
1794 spin_lock_irqsave(&dev->urbs.lock, flags); in ufx_urb_completion()
1795 list_add_tail(&unode->entry, &dev->urbs.list); in ufx_urb_completion()
1796 dev->urbs.available++; in ufx_urb_completion()
1797 spin_unlock_irqrestore(&dev->urbs.lock, flags); in ufx_urb_completion()
1804 up(&dev->urbs.limit_sem); in ufx_urb_completion()
1809 int count = dev->urbs.count; in ufx_free_urb_list()
1821 ret = down_interruptible(&dev->urbs.limit_sem); in ufx_free_urb_list()
1825 spin_lock_irqsave(&dev->urbs.lock, flags); in ufx_free_urb_list()
1827 node = dev->urbs.list.next; /* have reserved one with sem */ in ufx_free_urb_list()
1830 spin_unlock_irqrestore(&dev->urbs.lock, flags); in ufx_free_urb_list()
1836 usb_free_coherent(urb->dev, dev->urbs.size, in ufx_free_urb_list()
1850 spin_lock_init(&dev->urbs.lock); in ufx_alloc_urb_list()
1852 dev->urbs.size = size; in ufx_alloc_urb_list()
1853 INIT_LIST_HEAD(&dev->urbs.list); in ufx_alloc_urb_list()
1884 list_add_tail(&unode->entry, &dev->urbs.list); in ufx_alloc_urb_list()
1889 sema_init(&dev->urbs.limit_sem, i); in ufx_alloc_urb_list()
1890 dev->urbs.count = i; in ufx_alloc_urb_list()
1891 dev->urbs.available = i; in ufx_alloc_urb_list()
1907 ret = down_timeout(&dev->urbs.limit_sem, GET_URB_TIMEOUT); in ufx_get_urb()
1911 ret, dev->urbs.available); in ufx_get_urb()
1915 spin_lock_irqsave(&dev->urbs.lock, flags); in ufx_get_urb()
1917 BUG_ON(list_empty(&dev->urbs.list)); /* reserved one with limit_sem */ in ufx_get_urb()
1918 entry = dev->urbs.list.next; in ufx_get_urb()
1920 dev->urbs.available--; in ufx_get_urb()
1922 spin_unlock_irqrestore(&dev->urbs.lock, flags); in ufx_get_urb()
1935 BUG_ON(len > dev->urbs.size); in ufx_submit_urb()