adds support for usb dual port mode and generated documentation