Hi Again

It looks like there is a problem transferring more than 4k over the default 
control pipe using DeviceRequest (in both directions). If I try to read 32k, 
the OS stops reading after 4k.
Is there a way to transfer bigger data amounts in one request?

Thanks
Eric Gorouben
> Le 23 mars 2015 à 15:50, Eric Gorouben <[email protected]> a écrit :
> 
> Hi There
> 
> I'm trying to issue a 32k transfer over endpoint 0.
> 
> My request is
> 
>       UInt8 *pData; // Allocated, filled with correct data...
>     IOUSBDeviceInterface      **deviceIntf; // Successfully passed all 
> rituals to become a good IOUSBDeviceInterface...
>     IOUSBDevRequest   request;
>     kern_return_t     kernResult;
>     request.bmRequestType = ((kUSBOut << kUSBRqDirnShift)| (kUSBVendor << 
> kUSBRqTypeShift) | kUSBDevice);
>     request.bRequest = 0x55;
>     request.wValue = 0;
>     request.wIndex = 0;
>     request.wLength = 0x8000;
>     request.pData = pData;
>     kernResult=(*deviceIntf)->DeviceRequest(deviceIntf,&request);
> 
> The transfer starts on the bus, split in 64B packets as expected...
> 
> 8 B   SETUP txn       40 55 00 00 00 00 00 80
> 64 B  OUT txn (NAK)   01 FF FD FD BC BC ...
> 64 B  OUT txn   [65 POLL]     01 FF FD FD BC BC F9 A8 ...
> 64 B  OUT txn 8F CC BF 87 52 A9 BB 3C 40 DE 41 01...
> 64 B  OUT txn 2D D3 7E 2D 74 2B 6A 19 99 A5 54 56 ...
> 64 B  OUT txn 5B CD E4 E5 54 94 3B 36 A9 ED 55 ...
> 64 B  OUT txn 43 AE 04 1C FC 05 0D 09 FF 02 97 ...
> ...
> But at the 321st packet, I have a strange 55bytes packet, 
> 
> 64 B  OUT txn F2 F6 1E 6B E8 A4 12 21 D8 03... 
> 55 B  OUT txn 90 D8 F8 0D C2 1C A3 6A 4A 43... 
> 64 B  OUT txn (NAK)   7E CB 9C 65 57 EC A3 FF...
> 
> ...that stalls the pipe.
> 
> Is there a known limitation in the transfer size? What can make the OS 
> (Mavericks in this case) suddenly send 55 bytes instead of 64? 
> 
> Thanks in advance
> Eric Gorouben

 _______________________________________________
Do not post admin requests to the list. They will be ignored.
Usb mailing list      ([email protected])
Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/usb/archive%40mail-archive.com

This email sent to [email protected]

Reply via email to