Mailing Lists: Apple Mailing Lists

Image of Mac OS face in stamp
 
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Resolving issues between USB 1.0 & 2.0



Hi,

Could I know how to avoid getting kIOUSBNotSent1Err or kIOReturnIsoTooOld with my driver on a USB 2.0 bus?

code snippet
if (associatedPipe) {
nextSynchReadFrame = usbFrameToQueueAt;
result = associatedPipe->Read(neededDescriptor, nextSynchReadFrame, 1, &sampleRateFrame, &completion);
}


In gdb, result returns 0, but sampleRateFrame is as follows on USB 2.0
{
    frStatus = 0xe000400e,
    frReqCount = 3,
    frActCount = 0
}

Changing the frReqCount to 4 and the associated data structures gives result = kIOReturnIsoTooOld

the associatedPipe has the following endpoint characteristics on USB 2.0
_endpoint = {
    descriptor = 0x0,
    number = 4 '\004',
    direction = 1 '\001',
    maxPacketSize = 4,
    interval = 4 '\004'
}


On USB 1.0, the maxPacketSize = 3, and interval = 1.

I sometimes get a kernel panic when using USB 2.0 when attempting to perform the Read with the frReqCount set to either 3 or 4.

Any ideas?

Thanks,

David
_______________________________________________
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


Visit the Apple Store online or at retail locations.
1-800-MY-APPLE

Contact Apple | Terms of Use | Privacy Policy

Copyright © 2007 Apple Inc. All rights reserved.