This pull request adds handling for super-speed isochronous packet size to 
libusb_get_max_iso_packet_size. It checks the superspeed endpoint companion 
descriptor for the recommended packet length, per 
http://msdn.microsoft.com/en-us/library/windows/hardware/hh406225(v=vs.85).aspx:

> For SuperSpeed isochronous transfer, certain values of 
USB_SUPERSPEED_ENDPOINT_COMPANION_DESCRIPTOR (see Usbspec.h) are important. The 
USB driver stack uses those values to calculate the maximum number of bytes in 
a bus interval.
[...]
> wBytesPerInterval indicates the total number of bytes that the host can 
send or receive in a bus interval. Even though the maximum number of bytes per 
bus interval can be calculated as (bMaxBurst+1) * (Mult+1) * wMaxPacketSize, 
the USB 3.0 specification recommends using the wBytesPerInterval value instead. 
The wBytesPerInterval value must be less than or equal to that calculated value.
You can merge this Pull Request by running:

  git pull https://github.com/JoshBlake/libusbx superspeed

Or you can view, comment on it, or merge it online at:

  https://github.com/libusbx/libusbx/pull/163

-- Commit Summary --

  * Added super-speed isochronous length handling to 
libusb_get_max_iso_packet_size

-- File Changes --

    M libusb/core.c (20)

-- Patch Links --

https://github.com/libusbx/libusbx/pull/163.patch
https://github.com/libusbx/libusbx/pull/163.diff
------------------------------------------------------------------------------
Sponsored by Intel(R) XDK 
Develop, test and display web and hybrid apps with a single code base.
Download it for free now!
http://pubads.g.doubleclick.net/gampad/clk?id=111408631&iu=/4140/ostg.clktrk
_______________________________________________
libusbx-devel mailing list
libusbx-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/libusbx-devel

Reply via email to