LIBUSBK RELEASE NOTES
V3.1.0.0 (07/19/2021)
==============================================
- Added isochronous support for WinUSB
- Added BOS descriptors
- Added MS OS V1.0 Descriptors
- Added MS OS V2.0 Descriptors
- Added 'DeviceInterfaceGUIDs' property to libusb0 .inf template
- Fixed issues causing missing devices in the device list when then
DeviceInterfaceGUIDs property is missing
- Added BOS and MS descriptor reporting to kList
- Added FX3 benchmark test firmware
V3.0.8.0 (06/17/2021)
==============================================
- Add SHA256 self-sign support for dpscat and inf-wizard2
- Update kBench usb ids
- Fix inf-wizard2 re-pack (Now includes 7za.exe)
- Add support for "DeviceInterfaceGUID" (singular)
V3.0.7.0 (04/27/2014)
==============================================
- Improved driver error handling.
V3.0.6.15 RC15 (04/13/2014)
==============================================
- Fixed hot-plug init issue which caused a failure after re-loading
libusbK.dll dynamically. (Reported By Stefan Battmer)
- Fixed BSOD if a device is removed while changing an interfaces alternate
Setting. (Reported By Matt Liberty)
- Fixed GetCurrentAlternateSetting issues which caused the device to close
upon return.
V3.0.6.0 (08/11/2013)
==============================================
- Fixed hot-plug deadlock issue
- This can occur in GUI application when using the
KHOT_FLAG_PLUG_ALL_ON_INIT flag without the
KHOT_FLAG_POST_USER_MESSAGE flag.
- Fixed handle leak when opening devices that are already in-use
(WinUSB driver only)
- Fixed hot-plug init issue which caused a failure after re-loading
libusbK.dll dynamically. (Reported By Stefan Battmer)
V3.0.5.16 RC16 (07/03/2012)
==============================================
- Fixed BSOD! IRQL_NOT_LESS_OR_EQUAL in wdf01000.sys.
- This occurs when bulk/interrupt pipe transfers with RAW_IO
disabled(default) are pending and the system attempts to enter
stand-by. Reported by Ekkehard Domning, Peter Wang, JamesO.
- Fixed Potential BSOD! IRQL_NOT_LESS_OR_EQUAL in wdf01000.sys.
- This may sparatically occur with ISO transfers.
- Added power broadcast functionality to HotK. This allows applications
to receive system suspend/resume notifications.
- Updated queue suspend/resume routines to be more compatible with WinUSB.
- Updated behavior of RAW_IO pipe policy in regards to suspend/resume.
Updated behavior of ISO transfers in regards to suspend/resume.
- ISO/RAW_IO transfers no longer implement queue stop/resume
functionality. This means flying transfers will prevent the system
from entering standby until they complete, timeout, or the
*application* cancels them.
- Fixed InfWizard wide char/muti-byte conversions.
- Fixed 'WdfDeviceInitFree' not being called when 'WdfDeviceCreate'
succeeds and 'Device_OnAdd' ultimately fails.
V3.0.5.13 RC13 (05/11/2012)
==============================================
- Fixed OvlK memory allocation issue. Reported by Peter Wang.
V3.0.5.12 RC12 (04/28/2012)
==============================================
- Fixed internal descriptor parsing issue for devices with multiple
interfaces. Reported by Peter Wang.
- Fixed driver package installation issue when installing multiple .inf
files. Reported By Ekkehard Domning.
- Added support for Windows 8 Consumer Preview.
- Added library init/free functions with user assignable dynamic heap.
- New LibK_Context_Init function.
- New LibK_Context_Free function.
- New 'lusbk_dynapi.c' for dynamic loading of libusbK apis in C/C++.
V3.0.5.10 RC10 (03/08/2012)
==============================================
- New 'LibK_SetDefaultContext' function.
- New 'LibK_GetDefaultContext' function.
- New 'OvlK_WaitOldest' function.
- Fixed missing 'HotK_FreeAll' function export.
- Removed OvlK thread safe handlers to improve performance and increase
flexibility.
- Eliminated 'StmK_Read' transfer size restrictions. (Partial Transfers)
- Fixed StmK dead-lock issue when calling StmK_Stop()
- Added KSTM_FLAG enum values:
- KSTM_FLAG_USE_TIMEOUT = 0x80000000
- KSTM_FLAG_NO_PARTIAL_XFERS = 0x00100000
- KSTM_FLAG_TIMEOUT_MASK = 0x0001FFFF
- GLOBAL HEADER TYPE CHANGE: LONGs to INTs
- All LONG, PLONG, ULONG, PULONG, and LPDWORD data types were changed
to the equivalent INT, UINT representation.
- PULIC _KISO_CONTEXT typedef changed.
Inserted:
- UINT UrbHdrStatus;
- PULIC KSTM_INFO typedef changed.
Added:
- KSTM_HANDLE StreamHandle;
- PVOID UserState;
- PULIC KSTM_ERROR_CB signature changed.
Old:
- typedef INT KUSB_API KSTM_ERROR_CB(_in PKSTM_INFO StreamInfo, _in PKSTM_XFER_CONTEXT XferContext, _in INT ErrorCode);
New:
- typedef INT KUSB_API KSTM_ERROR_CB(_in PKSTM_INFO StreamInfo, _in PKSTM_XFER_CONTEXT XferContext, _in INT XferContextIndex, _in INT ErrorCode);
- PULIC KSTM_SUBMIT_CB signature changed.
Old:
- typedef INT KUSB_API KSTM_SUBMIT_CB(_in PKSTM_INFO StreamInfo, _in PKSTM_XFER_CONTEXT XferContext, _in LPOVERLAPPED Overlapped);
New:
- typedef INT KUSB_API KSTM_SUBMIT_CB(_in PKSTM_INFO StreamInfo, _in PKSTM_XFER_CONTEXT XferContext, _in INT XferContextIndex, _in LPOVERLAPPED Overlapped);
- PULIC KSTM_COMPLETE_CB signature changed.
Old:
- typedef INT KUSB_API KSTM_COMPLETE_CB(_in PKSTM_INFO StreamInfo, _in PKSTM_XFER_CONTEXT XferContext, _in INT ErrorCode);
New:
- typedef INT KUSB_API KSTM_COMPLETE_CB(_in PKSTM_INFO StreamInfo, _in PKSTM_XFER_CONTEXT XferContext, _in INT XferContextIndex, _in INT ErrorCode);
- PULIC KSTM_BEFORE_COMPLETE_CB signature changed.
Old:
- typedef KSTM_COMPLETE_RESULT KUSB_API KSTM_BEFORE_COMPLETE_CB(_in PKSTM_INFO StreamInfo, _in PKSTM_XFER_CONTEXT XferContext, _in PLONG ErrorCode);
New:
- typedef KSTM_COMPLETE_RESULT KUSB_API KSTM_BEFORE_COMPLETE_CB(_in PKSTM_INFO StreamInfo, _in PKSTM_XFER_CONTEXT XferContext, _in INT XferContextIndex, _in PLONG ErrorCode);
V3.0.5.5 RC5 (02/09/2012)
==============================================
- Fixed driver memory access violation when setting power policies.
- Fixed driver error handling for failed pipe policy requests.
- Added power management options page to InfWizard. This page allows
developers to easily configure default power management options for a
usb device. Options include the ability to suspend a device after it
idles for a specified amount of time or allow a device to wake the
system from a sleeping state.
- Re-designed power-policy-suspend example.
V3.0.5.4 RC4 (02/04/2012)
==============================================
- Fixed kBench msvcrt issue on Windows XP.
- Fixed replace file warning prompt in client installers.
- Fixed an issue with dev-kit setup which prevented it from updating
libusbK-inf-wizard.exe
V3.0.5.3 RC3 (02/03/2012)
==============================================
- New! Client install creator feature for InfWizard.
- Fixed an issue with the libusbK .inf template that prevented it from
updating the WDF runtimes on amd64 platforms. If this happens the
installation will fail with a Code 39.
- Added LstK_InitEx() function with device filtering options.
- Changed structure name KHOT_PATTERN_MATCH to KLST_PATTERN_MATCH.
- Added Pascal binding created by Ekkehard Domning.
- Added additional constants, enums, and class function overloads to
.NET bindings.
- Added InfWizard elevated permissions mainfest.
- Updated InfWizard libwdi components. (v1.2.1 modified) The modified
lidwdi source code is available in the src package.
- Fixed OvlK_Wait dead-lock issue when waiting on IO that was never
submitted and the cancel on timeout wait flag is set.
- Fixed driver issue causing the system to become unstable after
receiving an IO request to an invalid endpoint.
V3.0.5.1 RC1 (12/03/2011)
==============================================
- Fixed ISO packet USBD status; High word is ORed with low word to
create the 16bit packet status.
- Added BeforeComplete() stream (StmK) callback function. BeforeComplete()
is executed after a transfer completes but before it is accepted by the
stream.
- New! MFC based InfWizard.