From: Dmitry F. <dm...@da...> - 2015-03-02 18:25:37
|
Hello libusb-devel, This series contains patches that extend Windows backend to support UsbDk. Switch between UsbDk and WinUSB/LibusbK/Libusb0 is done at compile time with --enable-usbdk configuration option (off by default). UsbDk (USB Development Kit) is a set of software components meant to provide Windows user mode applications with direct and exclusive access to USB devices. Some distinctive UsbDk properties are: 1. UsbDk supports all types of devices and interfaces - bulk, isochronous, composite, HID etc. 2. Device capture process is totally dynamic, i.e. no inf files and self-signing needed, any device can be captured. 3. UsbDk co-exists with original device driver, when the device is not captured original driver is loaded by the system automatically. 4. If user mode client terminates unexpectedly for any reason system reverts to original device driver immediately. 5. Being USB filter driver UsbDk doesn't require WHQL-ing as per Microsoft requirements. UsbDk supports all Windows OS versions staring from Windows XP, i.e. XP/Vista/7/8/8.1/2003/2008/2008R2/2012/2012R2. Both 32 and 64 bit architectures are supported. UsbDk is fully open source and distributed under Apache 2.0 license. UsbDk project is hosted at spice-space.org, source code repository available at: http://cgit.freedesktop.org/spice/win32/usbdk Latest source tarball is at: http://www.spice-space.org/download/windows/usbdk/spice-usbdk-win-1.0-2-sources.zip UsbDk releases come with precompiled and signed by Red Hat binaries: 1. 32 bit: http://www.spice-space.org/download/windows/usbdk/UsbDk_1.0.2_x86.msi 2. 64 bit: http://www.spice-space.org/download/windows/usbdk/UsbDk_1.0.2_x64.msi UsbDk documentation: 1. Short presentation: http://www.spice-space.org/docs/usbdk/UsbDk_at_a_Glance.pdf 2. SDM: http://www.spice-space.org/docs/usbdk/UsbDk_Software_Development_Manual.pdf 3. UsbDk architecture specificatin (part of source tree): http://cgit.freedesktop.org/spice/win32/usbdk/tree/ARCHITECTURE UsbDk is maintained by Dmitry Fleytman (dfl...@re...) and Kirill Moizik (km...@re...) we'll be glad to answer your questions sent to us directly or via this mailing list. What do you think about this series? We will be glad to have it accepted into libusb upstream. Best Regards, Dmitry Dmitry Fleytman (3): windows: Move common definitions to a separate file usbdk: Introduce usbdk backend build: Integrate usbdk backend configure.ac | 9 + libusb/Makefile.am | 14 +- libusb/core.c | 6 + libusb/libusbi.h | 1 + libusb/os/UsbDk/UsbDkData.h | 100 +++++ libusb/os/UsbDk/UsbDkHelper.h | 239 ++++++++++++ libusb/os/windows_nt_common.c | 572 +++++++++++++++++++++++++++ libusb/os/windows_nt_common.h | 67 ++++ libusb/os/windows_usb.c | 556 ++------------------------ libusb/os/windows_usb.h | 14 +- libusb/os/windows_usbdk.c | 890 ++++++++++++++++++++++++++++++++++++++++++ libusb/os/windows_usbdk.h | 24 ++ 12 files changed, 1944 insertions(+), 548 deletions(-) create mode 100644 libusb/os/UsbDk/UsbDkData.h create mode 100644 libusb/os/UsbDk/UsbDkHelper.h create mode 100644 libusb/os/windows_nt_common.c create mode 100644 libusb/os/windows_nt_common.h create mode 100755 libusb/os/windows_usbdk.c create mode 100644 libusb/os/windows_usbdk.h -- 2.1.0 |