On Sat, Jun 03, 2000 at 10:43:51PM +0000, Matthew Dharm wrote:
> I need a good explanation of what the proper HCD behavior in the following
> situation is.  If the HCD maintainers could tell me, I'd appreciate it.
> 
> Basically, I'm submitting an URB to get 256 bytes in from a bulk-in
> endpoint.  The device only has 36 to send.  So it sends the 36.
> 
> Now, my understanding of the protocol is that the device will end that
> transfer with either a short packet or a zero-length packet.  So does the
> completion handler get called immediately when the zero-length or short
> packet it detected?  Or am I seeing some sort of race-condition like bug in
> my usb_stor_bulk_msg() function?

Speaking for UHCI, the controller marks the queue as done when it detects a
short packet (or zero length, depending whether the last packet was
"fullsize" or not). Thus the completion handler gets called after this
ocurrence only once and immediately (well, at the next frame...).

-- 
         Georg Acher, [EMAIL PROTECTED]         
         http://www.in.tum.de/~acher/
          "Oh no, not again !" The bowl of petunias          

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to