cdev
single threaded during gadget setup
usb_string_id() is called from bind callbacks to allocate string IDs. Drivers for functions, configurations, or gadgets will then store that ID in the appropriate descriptors and string table.
All string identifier should be allocated using this, usb_string_ids_tab() or usb_string_ids_n() routine, to ensure that for example different functions don't wrongly assign different meanings to the same identifier.
David Brownell <dbrownell@users.sourceforge.net>