Optional Utilities

usb_gadget_get_string - fill out a string descriptor
usb_descriptor_fillbuf - fill buffer with descriptors
usb_gadget_config_buf - builts a complete configuration descriptor
usb_copy_descriptors - copy a vector of USB descriptors
usb_find_endpoint - find a copy of an endpoint descriptor

The core API is sufficient for writing a USB Gadget Driver, but some optional utilities are provided to simplify common tasks. These utilities include endpoint autoconfiguration.