On Fri, 20 Jan 2006, Frantz, Chris wrote: > Pete, > > I do, unforunately, have a different problem that I may need your and > Alan's help on. It seems the uhci hub implementation has changed > slighly. In older kernels (2.6.9/2.6.10/2.6.11 timeframe), the uhci hub > portion of the driver had a rather long delay (10 ms) between clearning > root-hub port reset and then clearing the PORT_ENABLE_CHANGE and > CONNNECT_STATUS_CHANGE bits. > > On newer kernels, the uhci-hub code only waits 10us before clearing PEC > and CSC. We have a UHCI controller that takes on the order of ~250us to > set PEC and CSC after the root-hub reset event. As such, it doesn't > work correctly with the latest kernel's uhci driver. It gets into a > infinite "port-reset/detected a new device" type of loop. > > Would there be any problem with lengthening the delay between clearing > PORT_RESET and then clearing the PEC and CSC bits?
I'm not sure about that. The delay occurs with a spinlock held and interrupts disabled, and 250 us is a pretty long time to wait with interrupts turned off. Some people might get annoyed. There are other ways of accomplishing the same thing, but they are more difficult. Do you have any suggestions for an easy way to approach it? Or can you switch to a different controller? :-) Alan Stern ------------------------------------------------------- This SF.net email is sponsored by: Splunk Inc. Do you grep through log files for problems? Stop! Download the new AJAX search engine that makes searching your log files as easy as surfing the web. DOWNLOAD SPLUNK! http://sel.as-us.falkag.net/sel?cmd=lnk&kid=103432&bid=230486&dat=121642 _______________________________________________ [email protected] To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel
