On Sunday 08 May 2005 7:29 pm, Alan Stern wrote: > On Sun, 8 May 2005, David Brownell wrote: > > Oh, it's definitely INTR_RD. This happens when I have explicitly > suspended the root hub via sysfs but left the controller running, and then > plug/unplug a device.
So it's yet another case where the /sys/.../power/state attributes facilitate breaking things... :) > > No other IRQ makes sense. Try the attached patch, on the theory > > that the problem is INTR_RD. (If this is really the issue, then > > I'm surprised it's not appeared before.) > > Your patch solves the hang-up problem. Maybe the issue hasn't appeared > before because no one has tried using sysfs to suspend the root hub and > not the controller. > > The code still isn't quite right because the root hub doesn't > automatically resume. I haven't tried to track down the reason, but maybe > replacing the schedule_work() call with usb_hcd_resume_root_hub() would > help. (That replacement should be made in any case.) And that might also explain part of why I've never seen this. Last time I tested this stuff out, there was no such usb_hcd_*() call .. I suspect adding it changed a few assumptions. - Dave ------------------------------------------------------- This SF.Net email is sponsored by: NEC IT Guy Games. Get your fingers limbered up and give it your best shot. 4 great events, 4 opportunities to win big! Highest score wins.NEC IT Guy Games. Play to win an NEC 61 plasma display. Visit http://www.necitguy.com/?r=20 _______________________________________________ linux-usb-devel@lists.sourceforge.net To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel