.\" This manpage has been automatically generated by docbook2man .\" from a DocBook document. This tool can be found at: .\" .\" Please send any bug reports, improvements, comments, patches, .\" etc. to Steve Cheng . .TH "USB_GET_DEVICE_DESCRIPTOR" "" "06 October 2005" "" "" .SH NAME usb_get_device_descriptor \- (re)reads the device descriptor .SH SYNOPSIS "SYNOPSIS" .sp \fB .sp int usb_get_device_descriptor (struct usb_device * \fIdev\fB); \fR .SH "ARGUMENTS" .TP \fB\fIdev\fB\fR the device whose device descriptor is being updated .SH "CONTEXT" .PP !in_interrupt () .SH "DESCRIPTION" .PP Updates the copy of the device descriptor stored in the device structure, which dedicates space for this purpose. Note that several fields are converted to the host CPU's byte order: the USB version (bcdUSB), and vendors product and version fields (idVendor, idProduct, and bcdDevice). That lets device drivers compare against non-byteswapped constants. .PP There's normally no need to use this call, although some devices will change their descriptors after events like updating firmware. .PP This call is synchronous, and may not be used in an interrupt context. .PP Returns the number of bytes received on success, or else the status code returned by the underlying \fBusb_control_msg\fR call.