device filtering support
Xiaofan Chen
xiaofanc at gmail.com
Mon Feb 6 03:52:41 EST 2012
On Mon, Feb 6, 2012 at 4:22 PM, Vitali Lovich <vlovich at gmail.com> wrote:
>> All in all these are still theoretical analysis and we will try to
>> come out with some test cases to see if we can reproduce
>> real world examples to demonstrate the problems. In any
>> case, I still see the current enumerations under Windows
>> (and Mac OS X as well) as having performance issues which
>> the user may or may not want to live with.
>
> That's what I've been asking for.
I understand that.
>> Right now I am more inclined to Segher's compromised
>> proposal of give user the option of using filter to reduce
>> unnecessary traffic (please refer to my previous reply).
>
> Yeah, I'm pretty sure it's possible to convert VID/PID to GUIDs, or
> to determine the VID/PID without actually querying the device;
> after all, the VID & PID are encoded in the device instance path.
My thought is that GUID can be a filter for Windows.
There are one more potential issue with the current implementation
with regard to buggy device.
http://libusb.6.n5.nabble.com/device-cannot-be-reused-unless-it-is-reattached-tp4364981p4377141.html
The firmware is buggy since after it transfers some endpoint data
and then all subsequent device descriptor request will fail and then
the device goes to an unstable state.
We changed libusb-win32 driver in 1.2.5.0 to cache the
device descriptor to solve the issue.
The current libusb-1.0 implementation will cause big problems
for this kind of buggy device since libusb-1.0/libusbx program may
request descriptor even though it is not the device of interests.
The filter approach can help solve the issue.
--
Xiaofan
More information about the libusbx
mailing list