Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

usb_control_msg(9) [centos man page]


usb_control_msg - Builds a control urb, sends it off and waits for completion SYNOPSIS
int usb_control_msg(struct usb_device * dev, unsigned int pipe, __u8 request, __u8 requesttype, __u16 value, __u16 index, void * data, __u16 size, int timeout); ARGUMENTS
dev pointer to the usb device to send the message to pipe endpoint "pipe" to send the message to request USB message request value requesttype USB message request type value value USB message value index USB message index value data pointer to the data to send size length in bytes of the data to send timeout time in msecs to wait for the message to complete before timing out (if 0 the wait is forever) CONTEXT
!in_interrupt () DESCRIPTION
This function sends a simple control message to a specified endpoint and waits for the message to complete, or timeout. Don't use this function from within an interrupt context, like a bottom half handler. If you need an asynchronous message, or need to send a message from within interrupt context, use usb_submit_urb. If a thread in your driver uses this call, make sure your disconnect method can wait for it to complete. Since you don't have a handle on the URB used, you can't cancel the request. RETURN
If successful, the number of bytes transferred. Otherwise, a negative error number. COPYRIGHT
Kernel Hackers Manual 3.10 June 2014 USB_CONTROL_MSG(9)

Check Out this Related Man Page

USB_SG_INIT(9)							   USB Core APIs						    USB_SG_INIT(9)

usb_sg_init - initializes scatterlist-based bulk/interrupt I/O request SYNOPSIS
int usb_sg_init(struct usb_sg_request * io, struct usb_device * dev, unsigned pipe, unsigned period, struct scatterlist * sg, int nents, size_t length, gfp_t mem_flags); ARGUMENTS
io request block being initialized. until usb_sg_wait returns, treat this as a pointer to an opaque block of memory, dev the usb device that will send or receive the data pipe endpoint "pipe" used to transfer the data period polling rate for interrupt endpoints, in frames or (for high speed endpoints) microframes; ignored for bulk sg scatterlist entries nents how many entries in the scatterlist length how many bytes to send from the scatterlist, or zero to send every byte identified in the list. mem_flags SLAB_* flags affecting memory allocations in this call DESCRIPTION
This initializes a scatter/gather request, allocating resources such as I/O mappings and urb memory (except maybe memory used by USB controller drivers). The request must be issued using usb_sg_wait, which waits for the I/O to complete (or to be canceled) and then cleans up all resources allocated by usb_sg_init. The request may be canceled with usb_sg_cancel, either before or after usb_sg_wait is called. RETURN
Zero for success, else a negative errno value. COPYRIGHT
Kernel Hackers Manual 3.10 June 2014 USB_SG_INIT(9)
Man Page