这篇教程C++ usb_ep_alloc_request函数代码示例写得很实用,希望能帮到您。
本文整理汇总了C++中usb_ep_alloc_request函数的典型用法代码示例。如果您正苦于以下问题:C++ usb_ep_alloc_request函数的具体用法?C++ usb_ep_alloc_request怎么用?C++ usb_ep_alloc_request使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。 在下文中一共展示了usb_ep_alloc_request函数的25个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。 示例1: fastboot_usb_ep_initint fastboot_usb_ep_init(){ if (!l_fbdev.in_ep) { debugf("ep in is not alloc/r/n"); return -1; } in = l_fbdev.in_ep; if (!l_fbdev.out_ep) { debugf("ep out is not alloc/r/n"); return -1; } out = l_fbdev.out_ep; tx_req = usb_ep_alloc_request(in, 0); if (!tx_req) { debugf("ep tx request is not alloc/r/n"); return -1; } rx_req = usb_ep_alloc_request(out, 0); if (!rx_req) { debugf("ep rx request is not alloc/r/n"); usb_ep_free_request(in, tx_req); return -1; } return 0;}
开发者ID:sky8336,项目名称:mn201307,代码行数:28,
示例2: pantech_usb_test_bind_loopbackvoid pantech_usb_test_bind_loopback(void *endpoint){ struct usb_ep *ep = (struct usb_ep *)endpoint; if(!ep) return; if(!loopback_usb_request) { loopback_usb_request = usb_ep_alloc_request(ep, GFP_ATOMIC); if(!loopback_usb_request) { printk("error bind loopback/n"); } } if(!loopback_buffer) { loopback_buffer = kmalloc(LOOPBACK_BUF_SIZE, GFP_ATOMIC); if(!loopback_buffer) { printk("error allocation loopback buffer/n"); } else { printk("success allocation loopback buffer/n"); } } loopback_usb_test_cmd.run = 0; loopback_usb_test_cmd.open = 0; loopback_usb_test_cmd.type = 0xff;}
开发者ID:victor2002,项目名称:a770k_kernel,代码行数:25,
示例3: gs_alloc_req/* * gs_alloc_req * * Allocate a usb_request and its buffer. Returns a pointer to the * usb_request or NULL if there is an error. */struct usb_request *gs_alloc_req(struct usb_ep *ep, unsigned len, gfp_t kmalloc_flags){ struct usb_request *req; req = usb_ep_alloc_request(ep, kmalloc_flags); if (req != NULL) { req->length = len; /* if len is 0, alloc the empty req */ if (0 == len) { req->buf = NULL; req->dma = (dma_addr_t)NULL; } else { req->buf = kmalloc(len, kmalloc_flags); if (req->buf == NULL) { usb_ep_free_request(ep, req); return NULL; } } } return req;}
开发者ID:magnusjjj,项目名称:android_kernel_huawei_rle,代码行数:31,
示例4: uvc_video_alloc_requestsstatic intuvc_video_alloc_requests(struct uvc_video *video){ unsigned int i; int ret = -ENOMEM; BUG_ON(video->req_size); for (i = 0; i < UVC_NUM_REQUESTS; ++i) { video->req_buffer[i] = kmalloc(video->ep->maxpacket, GFP_KERNEL); if (video->req_buffer[i] == NULL) goto error; video->req[i] = usb_ep_alloc_request(video->ep, GFP_KERNEL); if (video->req[i] == NULL) goto error; video->req[i]->buf = video->req_buffer[i]; video->req[i]->length = 0; video->req[i]->dma = DMA_ADDR_INVALID; video->req[i]->complete = uvc_video_complete; video->req[i]->context = video; list_add_tail(&video->req[i]->list, &video->req_free); } video->req_size = video->ep->maxpacket; return 0;error: uvc_video_free_requests(video); return ret;}
开发者ID:romanbb,项目名称:android_kernel_lge_d851,代码行数:33,
示例5: __rkusb_init_ep_reqstatic struct usb_request * __rkusb_init_ep_req(struct rkusb_dev *dev, struct usb_ep* ep) { struct usb_request *req = usb_ep_alloc_request(ep, GFP_ATOMIC); if (!req) return NULL; req->buf = dev->req_in_buf; return req;}
开发者ID:Tigrouzen,项目名称:k1099,代码行数:8,
示例6: preallocstatic int prealloc(struct list_head *list, struct usb_ep *ep, unsigned n){ unsigned i; struct usb_request *req; bool usb_in; if (!n) return -ENOMEM; /* queue/recycle up to N requests */ i = n; list_for_each_entry(req, list, list) { if (i-- == 0) goto extra; } if (ep->desc->bEndpointAddress & USB_DIR_IN) usb_in = true; else usb_in = false; while (i--) { req = usb_ep_alloc_request(ep, GFP_ATOMIC); if (!req) return list_empty(list) ? -ENOMEM : 0; /* update completion handler */ if (usb_in) req->complete = tx_complete; else req->complete = rx_complete; list_add(&req->list, list); } return 0;extra: /* free extras */ for (;;) { struct list_head *next; next = req->list.next; list_del(&req->list); usb_ep_free_request(ep, req); if (next == list) break; req = container_of(next, struct usb_request, list); } return 0;}
开发者ID:moonlightly,项目名称:android_kernel_samsung_ms013g,代码行数:51,
示例7: usb_ep_alloc_requeststatic struct usb_request *gs_request_new(struct usb_ep *ep){ struct usb_request *req = usb_ep_alloc_request(ep, GFP_ATOMIC); if (!req) return NULL; req->buf = kmalloc(ep->maxpacket, GFP_ATOMIC); if (!req->buf) { usb_ep_free_request(ep, req); return NULL; } return req;}
开发者ID:AlexShiLucky,项目名称:linux,代码行数:14,
示例8: usb_ep_alloc_requeststruct usb_request *alloc_ep_req(struct usb_ep *ep, int len, int default_len){ struct usb_request *req; req = usb_ep_alloc_request(ep, GFP_ATOMIC); if (req) { req->length = len ?: default_len; req->buf = kmalloc(req->length, GFP_ATOMIC); if (!req->buf) { usb_ep_free_request(ep, req); req = NULL; } } return req;}
开发者ID:19Dan01,项目名称:linux,代码行数:15,
示例9: usb_ep_alloc_requeststruct usb_request *alloc_ep_req(struct usb_ep *ep){ struct usb_request *req; req = usb_ep_alloc_request(ep, GFP_ATOMIC); if (req) { req->length = buflen; req->buf = kmalloc(buflen, GFP_ATOMIC); if (!req->buf) { usb_ep_free_request(ep, req); req = NULL; } } return req;}
开发者ID:johnny,项目名称:CobraDroidBeta,代码行数:15,
示例10: usb_ep_alloc_requeststatic struct usb_request *alloc_ep_req(struct usb_ep *ep, unsigned length){ struct usb_request *req; req = usb_ep_alloc_request(ep, GFP_ATOMIC); if (req) { req->length = length; req->buf = kmalloc(length, GFP_ATOMIC); if (!req->buf) { usb_ep_free_request(ep, req); req = NULL; } } return req;}
开发者ID:sserg31,项目名称:sca3_main,代码行数:15,
示例11: alloc_requestsstatic int alloc_requests(struct fastboot_dev *dev, unsigned n, gfp_t gfp_flags){#if 0 dev->tx_req = usb_ep_alloc_request(dev->in_ep, 0); if (!dev->tx_req) goto fail1; dev->rx_req = usb_ep_alloc_request(dev->out_ep, 0); if (!dev->rx_req) goto fail2; return 0;fail2: usb_ep_free_request(dev->in_ep, dev->tx_req);fail1: error("can't alloc requests"); return -1;#endif return 0;}
开发者ID:sky8336,项目名称:mn201307,代码行数:24,
示例12: usb_ep_alloc_requeststruct usb_request *alloc_ep_req(struct usb_ep *ep, size_t len){ struct usb_request *req; req = usb_ep_alloc_request(ep, GFP_ATOMIC); if (req) { req->length = usb_endpoint_dir_out(ep->desc) ? usb_ep_align(ep, len) : len; req->buf = kmalloc(req->length, GFP_ATOMIC); if (!req->buf) { usb_ep_free_request(ep, req); req = NULL; } } return req;}
开发者ID:AlexShiLucky,项目名称:linux,代码行数:16,
示例13: npk_prepare_usb_requestsstatic int npk_prepare_usb_requests(void){ if (!_npk_dev || !_npk_dev->ep_in) { pr_err("Invalid npk device or enpoint"); return -ENODEV; } _npk_dev->req_data = usb_ep_alloc_request(_npk_dev->ep_in, GFP_KERNEL); if (!_npk_dev->req_data) { npk_usb_request_free(_npk_dev->ep_in, _npk_dev->req_data); _npk_dev->req_data = NULL; pr_err("Cannot allocate usb request"); return -ENOMEM; } return 0;}
开发者ID:TheSSJ,项目名称:android_kernel_asus_moorefield,代码行数:16,
示例14: usb_ep_alloc_request/*-------------------------------------------------------------------------*/static struct usb_request *alloc_ep_req(struct usb_ep *ep, unsigned length){ struct usb_request *req; req = usb_ep_alloc_request(ep, 0); if (!req) return req; req->length = length; req->buf = memalign(CONFIG_SYS_CACHELINE_SIZE, length); if (!req->buf) { usb_ep_free_request(ep, req); req = NULL; } return req;}
开发者ID:rck2015,项目名称:u-boot-xlnx,代码行数:18,
示例15: preallocstatic int prealloc(struct list_head *list, struct usb_ep *ep, unsigned n){ unsigned i; struct usb_request *req; if (!n) return -ENOMEM; /* queue/recycle up to N requests */ i = n; list_for_each_entry(req, list, list) { if (i-- == 0) goto extra; } while (i--) { req = usb_ep_alloc_request(ep, GFP_ATOMIC); if (!req) return list_empty(list) ? -ENOMEM : 0; /* use req buffer for 4-byte align */ req->buf = kmalloc(MAX_BUFFER_SIZE, GFP_ATOMIC); if (!req->buf) { usb_ep_free_request(ep, req); return list_empty(list) ? -ENOMEM : 0; } list_add(&req->list, list); } return 0;extra: /* free extras */ for (;;) { struct list_head *next; next = req->list.next; list_del(&req->list); kfree(req->buf); usb_ep_free_request(ep, req); if (next == list) break; req = container_of(next, struct usb_request, list); } return 0;}
开发者ID:mildrock,项目名称:overlay_plane_display,代码行数:46,
示例16: usb_ep_alloc_requeststatic struct usb_request *rockusb_start_ep(struct usb_ep *ep){ struct usb_request *req; req = usb_ep_alloc_request(ep, 0); if (!req) return NULL; req->length = EP_BUFFER_SIZE; req->buf = memalign(CONFIG_SYS_CACHELINE_SIZE, EP_BUFFER_SIZE); if (!req->buf) { usb_ep_free_request(ep, req); return NULL; } memset(req->buf, 0, req->length); return req;}
开发者ID:axxia,项目名称:axxia_u-boot,代码行数:18,
示例17: gs_alloc_req/* * gs_alloc_req * * Allocate a usb_request and its buffer. Returns a pointer to the * usb_request or NULL if there is an error. */struct usb_request *gs_alloc_req(struct usb_ep *ep, unsigned len, gfp_t kmalloc_flags){ struct usb_request *req; req = usb_ep_alloc_request(ep, kmalloc_flags); if (req != NULL) { req->length = len; req->buf = kmalloc(len, kmalloc_flags); if (req->buf == NULL) { usb_ep_free_request(ep, req); return NULL; } } return req;}
开发者ID:laperry1,项目名称:cm_kernel_oneplus_msm8974,代码行数:24,
示例18: usb_ep_alloc_requeststruct usb_request *alloc_ep_req(struct usb_ep *ep, int len){ struct usb_request *req; req = usb_ep_alloc_request(ep, GFP_ATOMIC); if (req) { if (len) req->length = len; else req->length = buflen; req->buf = kmalloc(req->length, GFP_ATOMIC); if (!req->buf) { usb_ep_free_request(ep, req); req = NULL; } } return req;}
开发者ID:ARMWorks,项目名称:FA_2451_Linux_Kernel,代码行数:18,
示例19: gsdio_alloc_reqstruct usb_request *gsdio_alloc_req(struct usb_ep *ep, unsigned len, gfp_t flags){ struct usb_request *req; req = usb_ep_alloc_request(ep, flags); if (!req) { pr_err("%s: usb alloc request failed/n", __func__); return NULL; } req->length = len; req->buf = kmalloc(len, flags); if (!req->buf) { pr_err("%s: request buf allocation failed/n", __func__); usb_ep_free_request(ep, req); return NULL; } return req;}
开发者ID:R-N,项目名称:boston-2.6.32.x,代码行数:21,
示例20: preallocstatic int prealloc(struct list_head *list, struct usb_ep *ep, unsigned n){ unsigned i; struct usb_request *req; if (!n) return -ENOMEM; /* queue/recycle up to N requests */ i = n; list_for_each_entry(req, list, list) { if (i-- == 0) goto extra; } while (i--) { req = usb_ep_alloc_request(ep, GFP_ATOMIC); if (!req){ printk(KERN_ERR "%[email C++ usb_ep_disable函数代码示例 C++ usb_endpoint_maxp函数代码示例
|