Alan Stern wrote: > On Sat, 17 May 2003, David Brownell wrote: > > >>That reset couldn't re-assign the address, so of course it failed. >> >>In hub.c, usb_physical_reset_device() is leaving dev->state as >>USB_STATE_CONFIGURED after resetting the port, and of course it's >>not legal to set the address of a device in that state. > > > Do you mean to say that this is a bug in usb_reset_device()? Isn't it > always going to be true that after a port reset a device will need to be > assigned an address? No; yes. What I mean is that something like this patch would seem to be needed, so USB_STATE_DEFAULT ("needs an address") is set when the reset completes. Untested, but it compiles. The enumeration logic still relies on hidden side effects. - Dave