In a USB device, virtual endpoint capability allows a number of physical
endpoints in the device to support a larger number of data pipes at
logical endpoints requested by the host. This is done by re-assigning
physical endpoints to support the logical endpoint requested by the host.
The logical endpoints and their corresponding data pipes may be served in
a round robin scheme.