Changes between Version 16 and Version 17 of windows_backend


Ignore:
Timestamp:
12/23/09 01:03:30 (3 years ago)
Author:
pbatard
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • windows_backend

    v16 v17  
    77== Status == 
    88 
    9 The Windows backend is still in early alpha stages. As of 2009.12.12, it is lacking: 
    10   * I/O functions 
    11   * threading 
    12   * ... 
     9The Windows backend is still in early alpha stages. As of 2009.12.22, it only supports control transfers (eg. strings) but is lacking: 
     10  * data I/O 
     11  * support for multiple threads 
    1312 
    1413== Source == 
    1514 
    16 The Windows backend is available in the [http://libusb.org/browser/?rev=winusb winusb git branch]. 
     15The (initial) Windows backend is available in the [http://libusb.org/browser/?rev=winusb winusb git branch]. 
    1716 
    1817For those not familiar with git, here are the git commands you can use to work on the winusb branch: 
     
    3130  * For convenience reasons, the development toolchain used for the Windows backend is [http://www.mingw.org MinGW] and the target for the first stable release will be Vista and later Windows versions. 
    3231  * The method of dealing with USB devices in the first release will be [http://msdn.microsoft.com/en-us/library/aa476426.aspx WinUSB] only, with some provisions for HID and kernel driver access to be included later.  
    33   * Windows' handling of multiple interfaces is currently done with a single WinUSB device, that replaces the usbccgp.sys driver (Composite Generic Parent) rather than through the MI parts of the latter (VID_####&PID_####&MI_##). We might use separate WinUS drivers for each interface along with usbccgp if we can figure an easy way to do so. For more info, see "2. How Windows handles a composite device" at [http://www.cygnal.org/ubb/Forum9/HTML/001050.html]. 
     32  * Windows' handling of composite devices will be done with multiple WinUSB drivers (VID_####&PID_####&MI_##), descendants of the usbccgp.sys driver (Composite Generic Parent). For more info, see "2. How Windows handles a composite device" at [http://www.cygnal.org/ubb/Forum9/HTML/001050.html]. 
    3433 
    3534== Current Issues == 
    3635 
    37   * IOCTL_USB_GET_NODE_CONNECTION_INFORMATION [http://sourceforge.net/tracker/index.php?func=detail&aid=2904747&group_id=202880&atid=983354 appears to be broken] in MinGW-w64 (x64 platforms) 
    38   * WinUSB does not support multiple concurrent applications (as per the [http://download.microsoft.com/download/9/C/5/9C5B2167-8017-4BAE-9FDE-D599BAC8184A/WinUsb_HowTo.docx WinUSB Howto whitepaper]) 
    39   * WinUSB does not support isochronous transfers 
     36  * IOCTL_USB_GET_NODE_CONNECTION_INFORMATION [http://sourceforge.net/tracker/index.php?func=detail&aid=2904747&group_id=202880&atid=983354 appears to be broken] in MinGW-w64 (x64 platforms). 
     37  * WinUSB does not support multiple concurrent applications (as per the [http://download.microsoft.com/download/9/C/5/9C5B2167-8017-4BAE-9FDE-D599BAC8184A/WinUsb_HowTo.docx WinUSB Howto whitepaper]). 
     38  * WinUSB does not support isochronous transfers. 
    4039 
    4140== To Do == 
    4241 
    43   * asynchronous I/O 
     42  * data transfers 
     43  * transfer cancellation 
    4444  * threading 
    45   * Use [http://www.monkey.org/~provos/libevent/ libevent] (or something else) for poll(). Apply the MinGW patches from tor. 
    4645  * automated WinUSB driver installation? 
     46 
     47== Done == 
     48 
     49  * device enumeration 
     50  * descriptors retrieval 
     51  * composite devices & interface selection 
     52  * poll and pipe 
     53  * control transfers 
    4754 
    4855== Development's status log ==