windows_winusb: Set policy ISO_ALWAYS_START_ASAP for libusbK
authorLéo Lam <leo@innovatetechnologi.es>
Sat, 4 May 2019 17:53:56 +0000 (19:53 +0200)
committerNathan Hjelm <hjelmn@me.com>
Mon, 8 Jul 2019 04:01:14 +0000 (22:01 -0600)
commit0d353783b29c274af2a1554a2a1741a13f93bbb7
tree404abee025cb535a5a0caaf1e0555be00c194489
parent5305df7966eb920291cb2eafad27e5e201edd79b
windows_winusb: Set policy ISO_ALWAYS_START_ASAP for libusbK

In some cases, this is required to avoid eventually getting a
USBD_STATUS_BAD_START_FRAME error back from the Windows USB stack.

This makes the libusbK code match the behaviour of the Linux backend.

It appears that the libusbK backend tried to get this behaviour by
setting StartFrame to 0. However, libusbK docs state that:

"Specifing 0 for KISO_CONTEXT::StartFrame (start transfer ASAP) is
restricted to the first transaction on a newly opened or reset pipe."

Closes #569

Signed-off-by: Nathan Hjelm <hjelmn@me.com>
libusb/os/windows_winusb.c
libusb/os/windows_winusb.h
libusb/version_nano.h