Pat,

Thank you for digging into the USB mass storage spec.  I have a limited view
as I am focused on trying to figure out how to twiddle bits at the hardware
level and don't understand the bigger picture yet.

> 6.7.3.2.b.i.1 says "The device shall either accept a total of
> dCBWDataTransferLength, or end the transfer prematurely by STALLing the
> Bulk-Out pipe."

Given the above requirement and the fact that the UDC driver doesn't know
anything about dCBWDataTransferLength, it seems that file_storage.c will
have to handle complying with the requirement.

In this case it might be easier for file_storage.c to recover by accepting
all dCBWDataTransferLength instead of stalling.

Todd

> -----Original Message-----
> From: Pat LaVarre [mailto:[EMAIL PROTECTED]
> Sent: Friday, July 16, 2004 3:41 PM
> To: Pat LaVarre
> Cc: Todd Fischer; Alan Stern; Diego A. Dompe Gamboa; USB development
> list; David Brownell
> Subject: Re: [linux-usb-devel] file_storage.c stalling the out bulk
> endpoint ,but not clearing the stall
>
>
> > Per chapter 6, device may not stall Out pipe unless some packet of H
> > was stalled, except to report a phase error.
> > No?
> > (As yet, I'm cheating, I haven't recalled the spec to appear before me
> > ...)
>
> Awww nuts I may be going offline now too long for me to happily leave
> this chit chat paused here.
>
> Ok.  I've found a local copy of usbmassbulk_10.pdf
>
> There I see:
>
> 6.7.3.2.b.i.1 says "The device shall either accept a total of
> dCBWDataTransferLength, or end the transfer prematurely by STALLing the
> Bulk-Out pipe."
>
> Is that English not clear?
>
> I think that English is supposed to mean, the device shall not STALL
> the OUT pipe after the last ACK of OUT, given a CBW that says Ho.  By
> "last ACK" of course we mean the ACK of the ((Ho+maxPacket - 1) /
> maxPacket)'th packet.
>
> Reading the rest of 6.7.3 tells me that also the device shall not STALL
> the OUT pipe even to report a phase error.  When I was speaking wrongly
> before, I was confusing the always-allowed STALL of IN to report phase
> error with a STALL of OUT, sorry.
>
> Certainly I agree that a STALL of OUT after the last ACK will appear to
> the host as a STALL of CBW.  That will look to the host as if the
> device saw the CBW as not "valid" or not "meaningful", and life will go
> downhill from there.
>
> > a flaw in the Bulk-only protocol
>
> (: Mmmm, show me. :)
>
> Meanwhile I will here now renew my solicitation of volunteers to help
> write a rationale for that .pdf that would make that .pdf less
> difficult to read accurately, and I thank you again for including me in
> this interesting thread.
>
> *"Pat LaVarre" = x50 BBB




-------------------------------------------------------
This SF.Net email is sponsored by BEA Weblogic Workshop
FREE Java Enterprise J2EE developer tools!
Get your free copy of BEA WebLogic Workshop 8.1 today.
http://ads.osdn.com/?ad_id=4721&alloc_id=10040&op=click
_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to