On Fri, 29 Dec 2006, Marcelo Tosatti wrote: > How about this, then: > > > diff --git a/drivers/usb/host/ehci-hcd.c b/drivers/usb/host/ehci-hcd.c > index 025d333..5c90bde 100644 > --- a/drivers/usb/host/ehci-hcd.c > +++ b/drivers/usb/host/ehci-hcd.c > @@ -496,6 +496,9 @@ static int ehci_run (struct usb_hcd *hcd > u32 temp; > u32 hcc_params; > > + hcd->uses_new_polling = 1; > + hcd->poll_rh = 0; > + > /* EHCI spec section 4.1 */ > if ((retval = ehci_reset(ehci)) != 0) { > ehci_mem_cleanup(ehci); > @@ -661,6 +664,8 @@ dead: > if (bh) > ehci_work (ehci); > spin_unlock (&ehci->lock); > + if (status & STS_PCD) > + usb_hcd_poll_rh_status(hcd); > return IRQ_HANDLED; > }
It looks good to me, except for one little thing: The code section just above your last hunk (starting with the "PCI errors" comment) overwrites the value of "status". To be safe, it should use a local variable with a different name. Dave Brownell (the maintainer of ehci-hcd) might have some additional comments. Alan Stern ------------------------------------------------------------------------- Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys - and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV _______________________________________________ linux-usb-devel@lists.sourceforge.net To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel