This is weird, and I'm not expecting it to be a IOUSBFamily bug, but I'm
hoping that someone can point me where I should be looking in my code or the
firmware...
The device reports that it has 6 interfaces, and 3 of the 4 that are isoc
streaming seem to work just fine, but the last one seems have a problem with
it's GetMaxPacketSize() result.
The descriptor I get from the device has this for the interface:
9 4 5 0 0 1 2 0 0 AUDIO STREAM 5 -|
9 4 5 1 1 1 2 0 0 |
7 24 1 4 1 1 0 |
e 24 2 1 2 3 18 2 44 ac 0 80 bb 0 |
9 5 86 d 26 1 1 0 0 |
7 25 1 1 0 0 0 |
9 4 5 2 1 1 2 0 0 |
7 24 1 4 1 1 0 |
e 24 2 1 2 2 10 2 44 ac 0 80 bb 0 |
9 5 86 9 c4 0 1 0 0 |
7 25 1 1 0 0 0 |
9 4 5 3 1 1 2 0 0 |
7 24 1 4 1 1 0 |
e 24 2 1 2 3 18 2 88 58 1 0 77 1 |
9 5 86 9 46 2 1 0 0 |
7 25 1 1 0 0 0 ----------------------|
This looks like a perfectly valid interface with valid information for the
endpoints.
When I do GetMaxPacketSize() for alternate setting 1 I get 0 (should be
0x126), when I do it for 2 I get 0x126 (should be 0xc4), and when I do it
for 3 I get 0 (should be 0x246).
Just to make sure I'm on the right interface I call GetInterfaceNumber,
GetAlternateSetting, GetEndpointNumber, GetDirection, and GetType, and they
all report the correct values. GetInterfaceNumber reports 5,
GetAlternateSetting reports 1 (or 2 or 3), GetEndpointNumber reports 6,
GetDirection reports 1, kUSBIn, GetType reports 1, kUSBIsoc.
The other interfaces are substantially similar to this interface (but have
different endpoint numbers 0x1, 0x81, 0x3, 0x4, 0x85, plus this one, 0x86)
and appear to work (though I don't deal with the audio MIDI interfaces).
Any ideas what might be causing things to go wrong?
Thanks,
Mark
--
Mark Cookson
M-Audio, a part of Avid
225 Locust St.
Hudson, WI 54016
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Usb mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/usb/email@hidden
This email sent to email@hidden