Mailing Lists: Apple Mailing Lists

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

Re: Mac OS problem for USB mass storage device



Eric,

Thanks for your prompt reply.

My understanding is, "Removal of the halt condition is achieved via software
intervention through a separate control pipe." means host should issue some
command like Clear_Feature via a control pipe.  Usually, this control pipe
is the default control pipe, that is, endpoint 0.  But the recipient of this
command should be the endpoint of the BULK pipe.

For mass storage device, using STALL is not unusual when handling some error
condition.  Our device can work well for OS 9.2.

Roger Lu

----- Original Message -----
From: "Eric Welch" <email@hidden>
To: "Roger Lu" <email@hidden>
Cc: <email@hidden>
Sent: Monday, March 11, 2002 1:40 PM
Subject: Re: Mac OS problem for USB mass storage device


> Roger,
>
>  From a quick review of the USB 2.0 specification, it looks to me as if
> OSX 10.1.3 is doing the right thing by responding to a BULK endpoint
> STALL with a CLEAR FEATURE on the control endpoint 0.
>
> I'm not an expert on USB storage class devices, but why is your endpoint
> returning a STALL?  The spec implies that STALL is used when something
> has gone wrong, such as the host asking the device to do something that
> isn't supported.  For example, a host read pending on a STALLed would
> normally be aborted.
>
> Section 5.8.5 of the USB 2.0 spec on Bulk Transfer Data Sequences
> states, in part:
>
> If a halt condition is detected on a bulk pipe due to transmission
> errors or a STALL handshake being returned from the endpoint, all
> pending IRPs are retired.  Removal of the halt condition is achieved via
> software intervention through a separate control pipe."
>
> Hope  this helps...
>
> eric
>
> On Sunday, March 10, 2002, at 09:05 PM, Roger Lu wrote:
>
> > Hi,
> >
> > While we developed a control IC for USB mass storage device (BULK
> > only), we
> > found that Mac OS 10.1.3 behaves strangely when handling STALL
> > condition.
> >
> > In case our device returns STALL for a BULK pipe (at CSW stage), Mac OS
> > tries
> > to clear it by a Clear_Feature command.  However, Mac OS 10.1.3 issues
> > this
> > command to control pipe (endpoint 0), not the BULK pipe which is really
> > stalled.  Then Mac OS retrieves status of the BULK pipe by a Get_Status
> > command and finds the STALL condition is not cleared as expected.  So
> > Mac OS
> > tries Clear_Feature (to the wrong endpoint again) and Get_Status again
> > and
> > again, and never escapes from this endless loop.
> >
> > I have stored the phenomenon by Catalyst's USB protocol analyzer.  I am
> > afraid
> > to attach the file will violate rules of this group, so I did not
> > attach it.
> > Hope somebody can help me.
> >
> > Regards
> >
> > Roger Lu
> > _______________________________________________
> > usb mailing list | email@hidden
> > Help/Unsubscribe/Archives:
> > http://www.lists.apple.com/mailman/listinfo/usb
> > Do not post admin requests to the list. They will be ignored.
_______________________________________________
usb mailing list | email@hidden
Help/Unsubscribe/Archives: http://www.lists.apple.com/mailman/listinfo/usb
Do not post admin requests to the list. They will be ignored.

References: 
 >Re: Mac OS problem for USB mass storage device (From: Eric Welch <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.