.\" 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_STRING" "" "06 October 2005" "" "" .SH NAME usb_string \- returns ISO 8859-1 version of a string descriptor .SH SYNOPSIS "SYNOPSIS" .sp \fB .sp int usb_string (struct usb_device * \fIdev\fB, int \fIindex\fB, char * \fIbuf\fB, size_t \fIsize\fB); \fR .SH "ARGUMENTS" .TP \fB\fIdev\fB\fR the device whose string descriptor is being retrieved .TP \fB\fIindex\fB\fR the number of the descriptor .TP \fB\fIbuf\fB\fR where to put the string .TP \fB\fIsize\fB\fR how big is ``buf''? .SH "CONTEXT" .PP !in_interrupt () .SH "DESCRIPTION" .PP This converts the UTF-16LE encoded strings returned by devices, from \fBusb_get_string_descriptor\fR, to null-terminated ISO-8859-1 encoded ones that are more usable in most kernel contexts. Note that all characters in the chosen descriptor that can't be encoded using ISO-8859-1 are converted to the question mark (``?'') character, and this function chooses strings in the first language supported by the device. .PP The ASCII (or, redundantly, ``US-ASCII'') character set is the seven-bit subset of ISO 8859-1. ISO-8859-1 is the eight-bit subset of Unicode, and is appropriate for use many uses of English and several other Western European languages. (But it doesn't include the ``Euro'' symbol.) .PP This call is synchronous, and may not be used in an interrupt context. .PP Returns length of the string (>= 0) or usb_control_msg status (< 0).