On Mon, 11 Oct 2004, David Brownell wrote:

> On Monday 11 October 2004 1:25 pm, Alan Stern wrote:
> > On Sun, 10 Oct 2004, David Brownell wrote:
> > 
> > > @@ -1981,6 +2013,8 @@
> > >                 NULL, 0, HZ * USB_CTRL_SET_TIMEOUT);
> > >         if (retval == 0)
> > >                 usb_set_device_state(udev, USB_STATE_ADDRESS);
> > > +       usb_disable_endpoint(udev, 0 + USB_DIR_OUT);
> > > +       udev->epmaxpacketout[0] = udev->epmaxpacketin [0];
> > >         return retval;
> > >  }
> > 
> > 
> > Interesting -- this may interact with the MS-style device initialization 
> > patch.  Why did you only disable the OUT direction?
> 
> Control endpoints are bi-directional (with a single queue),
> so  it should never be necessary to disable two directions
> for a control endpoint (like ep0).

That's true in theory.  The practice gets a little confused, particularly 
when you reflect that control URBs have _two_ direction indicators: one in 
urb->pipe and another in urb->setup_packet->bRequestType.

> Secondarily, yes that's (currently) the first/only request that
> has been issued to that device, so it's also not possible that
> the HC or HCD cached state for ep0 IN transactions.

Again true (currently, but not after the initialization change).  It's not
clear what cached state could be changed by the SET-ADDRESS request --
apart from the obvious candidate, the device address.  Do you think the
EHCI/OHCI driver or hardware was somehow getting confused by the address
change?  More generally, do you have any idea how this patch helps solve
those "not accepting address" errors?  Or why things used to work better 
than they do now?

I'm worried that this patch will no longer be adequate when the 
initialization sequence changes.  If I knew exactly what needed to be 
fixed, I'd be a lot more confident...

Alan Stern



-------------------------------------------------------
This SF.net email is sponsored by: IT Product Guide on ITManagersJournal
Use IT products in your business? Tell us what you think of them. Give us
Your Opinions, Get Free ThinkGeek Gift Certificates! Click to find out more
http://productguide.itmanagersjournal.com/guidepromo.tmpl
_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to