[PATCH] usbcore: small changes to HCD glue layer

This patch (as549) introduces two small changes in the HCD glue layer.
The first simply removes a redundant test.  The second allows root-hub
polling to continue for a single iteration after a host controller dies;
this is needed for the patch that follows.

Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This commit is contained in:
Alan Stern
2005-09-05 13:55:23 -04:00
committed by Greg Kroah-Hartman
parent f7214ff4e8
commit f1a15606d5

View File

@ -1606,7 +1606,7 @@ irqreturn_t usb_hcd_irq (int irq, void *__hcd, struct pt_regs * r)
return IRQ_NONE; return IRQ_NONE;
hcd->saw_irq = 1; hcd->saw_irq = 1;
if (hcd->state != start && hcd->state == HC_STATE_HALT) if (hcd->state == HC_STATE_HALT)
usb_hc_died (hcd); usb_hc_died (hcd);
return IRQ_HANDLED; return IRQ_HANDLED;
} }
@ -1630,7 +1630,6 @@ void usb_hc_died (struct usb_hcd *hcd)
spin_lock_irqsave (&hcd_root_hub_lock, flags); spin_lock_irqsave (&hcd_root_hub_lock, flags);
if (hcd->rh_registered) { if (hcd->rh_registered) {
hcd->poll_rh = 0; hcd->poll_rh = 0;
del_timer(&hcd->rh_timer);
/* make khubd clean up old urbs and devices */ /* make khubd clean up old urbs and devices */
usb_set_device_state (hcd->self.root_hub, usb_set_device_state (hcd->self.root_hub,