.\" 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_GADGET_GET_STRING" "" "06 October 2005" "" ""
.SH NAME
usb_gadget_get_string \- fill out a string descriptor
.SH SYNOPSIS
"SYNOPSIS"
.sp
\fB
.sp
int usb_gadget_get_string (struct usb_gadget_strings * \fItable\fB, int \fIid\fB, u8 * \fIbuf\fB);
\fR
.SH "ARGUMENTS"
.TP
\fB\fItable\fB\fR
of c strings using iso latin/1 characters
.TP
\fB\fIid\fB\fR
string id, from low byte of wValue in get string descriptor
.TP
\fB\fIbuf\fB\fR
at least 256 bytes
.SH "DESCRIPTION"
.PP
Finds the iso latin/1 string matching the ID, and converts it into a
string descriptor in utf16-le.
Returns length of descriptor (always even) or negative errno
.PP
If your driver needs stings in multiple languages, you'll need to
to use some alternate solution for languages where the ISO 8859/1
(latin/1) character set can't be used. For example, they can't be
used with Chinese (Big5, GB2312, etc), Japanese, Korean, or many other
languages. You'd likely ``switch (wIndex) { ... }'' in your ep0
string descriptor logic, using this routine in cases where ``western
european'' characters suffice for the strings being returned.