Lines Matching refs:urb

82 static void dlfb_urb_completion(struct urb *urb);
83 static struct urb *dlfb_get_urb(struct dlfb_data *dlfb);
84 static int dlfb_submit_urb(struct dlfb_data *dlfb, struct urb * urb, size_t len);
288 struct urb *urb;
293 urb = dlfb_get_urb(dlfb);
294 if (!urb)
297 buf = (char *) urb->transfer_buffer;
317 retval = dlfb_submit_urb(dlfb, urb, writesize);
537 static int dlfb_render_hline(struct dlfb_data *dlfb, struct urb **urb_ptr,
544 struct urb *urb = *urb_ptr;
546 u8 *cmd_end = (u8 *) urb->transfer_buffer + urb->transfer_buffer_length;
578 int len = cmd - (u8 *) urb->transfer_buffer;
579 if (dlfb_submit_urb(dlfb, urb, len))
582 urb = dlfb_get_urb(dlfb);
583 if (!urb)
585 *urb_ptr = urb;
586 cmd = urb->transfer_buffer;
587 cmd_end = &cmd[urb->transfer_buffer_length];
603 struct urb *urb;
626 urb = dlfb_get_urb(dlfb);
627 if (!urb) {
631 cmd = urb->transfer_buffer;
637 if (dlfb_render_hline(dlfb, &urb,
644 if (cmd > (char *) urb->transfer_buffer) {
646 if (cmd < (char *) urb->transfer_buffer + urb->transfer_buffer_length)
649 len = cmd - (char *) urb->transfer_buffer;
650 dlfb_submit_urb(dlfb, urb, len);
653 dlfb_urb_completion(urb);
789 struct urb *urb;
806 urb = dlfb_get_urb(dlfb);
807 if (!urb)
810 cmd = urb->transfer_buffer;
815 if (dlfb_render_hline(dlfb, &urb, (char *) info->fix.smem_start,
822 if (cmd > (char *) urb->transfer_buffer) {
824 if (cmd < (char *) urb->transfer_buffer + urb->transfer_buffer_length)
827 len = cmd - (char *) urb->transfer_buffer;
828 dlfb_submit_urb(dlfb, urb, len);
831 dlfb_urb_completion(urb);
1156 struct urb *urb;
1168 urb = dlfb_get_urb(dlfb);
1169 if (!urb)
1172 bufptr = (char *) urb->transfer_buffer;
1180 dlfb_submit_urb(dlfb, urb, bufptr -
1181 (char *) urb->transfer_buffer);
1719 dev_err(&intf->dev, "unable to allocate urb list\n");
1823 static void dlfb_urb_completion(struct urb *urb)
1825 struct urb_node *unode = urb->context;
1829 switch (urb->status) {
1841 __func__, urb->status);
1846 urb->transfer_buffer_length = dlfb->urbs.size; /* reset to actual */
1861 struct urb *urb;
1875 urb = unode->urb;
1878 usb_free_coherent(urb->dev, dlfb->urbs.size,
1879 urb->transfer_buffer, urb->transfer_dma);
1880 usb_free_urb(urb);
1889 struct urb *urb;
1910 urb = usb_alloc_urb(0, GFP_KERNEL);
1911 if (!urb) {
1915 unode->urb = urb;
1918 &urb->transfer_dma);
1921 usb_free_urb(urb);
1930 /* urb->transfer_buffer_length set to actual before submit */
1931 usb_fill_bulk_urb(urb, dlfb->udev,
1934 urb->transfer_flags |= URB_NO_TRANSFER_DMA_MAP;
1946 static struct urb *dlfb_get_urb(struct dlfb_data *dlfb)
1957 "wait for urb interrupted: %d available: %d\n",
1972 return unode->urb;
1975 static int dlfb_submit_urb(struct dlfb_data *dlfb, struct urb *urb, size_t len)
1981 urb->transfer_buffer_length = len; /* set to actual payload len */
1982 ret = usb_submit_urb(urb, GFP_KERNEL);
1984 dlfb_urb_completion(urb); /* because no one else will */
1986 dev_err(&dlfb->udev->dev, "submit urb error: %d\n", ret);