Skip to content

Commit

Permalink
[PATCH] USB: isp116x-hcd: replace mdelay() by msleep()
Browse files Browse the repository at this point in the history
Replace mdelay() by msleep() in bus_suspend(); the rest of the system will
gain 7ms. The related code is reorganized to minimize the number of
locking/unlocking calls.

The last hunk of the patch is the formatting change by Lindent.

Signed-off-by: Olav Kongas <ok@artecdesign.ee>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
  • Loading branch information
Olav Kongas authored and Greg Kroah-Hartman committed Feb 1, 2006
1 parent e9aa795 commit 0be930c
Showing 1 changed file with 11 additions and 10 deletions.
21 changes: 11 additions & 10 deletions drivers/usb/host/isp116x-hcd.c
Original file line number Diff line number Diff line change
Expand Up @@ -1420,33 +1420,34 @@ static int isp116x_bus_suspend(struct usb_hcd *hcd)
int ret = 0;

spin_lock_irqsave(&isp116x->lock, flags);

val = isp116x_read_reg32(isp116x, HCCONTROL);

switch (val & HCCONTROL_HCFS) {
case HCCONTROL_USB_OPER:
spin_unlock_irqrestore(&isp116x->lock, flags);
val &= (~HCCONTROL_HCFS & ~HCCONTROL_RWE);
val |= HCCONTROL_USB_SUSPEND;
if (device_may_wakeup(&hcd->self.root_hub->dev))
val |= HCCONTROL_RWE;
/* Wait for usb transfers to finish */
mdelay(2);
msleep(2);
spin_lock_irqsave(&isp116x->lock, flags);
isp116x_write_reg32(isp116x, HCCONTROL, val);
spin_unlock_irqrestore(&isp116x->lock, flags);
/* Wait for devices to suspend */
mdelay(5);
case HCCONTROL_USB_SUSPEND:
msleep(5);
break;
case HCCONTROL_USB_RESUME:
isp116x_write_reg32(isp116x, HCCONTROL,
(val & ~HCCONTROL_HCFS) |
HCCONTROL_USB_RESET);
case HCCONTROL_USB_RESET:
ret = -EBUSY;
default: /* HCCONTROL_USB_SUSPEND */
spin_unlock_irqrestore(&isp116x->lock, flags);
break;
default:
ret = -EINVAL;
}

spin_unlock_irqrestore(&isp116x->lock, flags);
return ret;
}

Expand Down Expand Up @@ -1715,9 +1716,9 @@ static struct platform_driver isp116x_driver = {
.remove = isp116x_remove,
.suspend = isp116x_suspend,
.resume = isp116x_resume,
.driver = {
.name = (char *)hcd_name,
},
.driver = {
.name = (char *)hcd_name,
},
};

/*-----------------------------------------------------------------*/
Expand Down

0 comments on commit 0be930c

Please sign in to comment.