summaryrefslogtreecommitdiffstats
path: root/drivers/usb/host/ehci.h
diff options
context:
space:
mode:
authorAlan Stern <stern@rowland.harvard.edu>2012-07-11 17:23:10 +0200
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2012-07-17 01:56:48 +0200
commitc4f3476436f7452b97c8accb5dd7d53219a11a3f (patch)
tree95711a24bb4357dab53d4641aae5a09292974fb8 /drivers/usb/host/ehci.h
parentUSB: EHCI: simplify isochronous scanning (diff)
downloadlinux-c4f3476436f7452b97c8accb5dd7d53219a11a3f.tar.xz
linux-c4f3476436f7452b97c8accb5dd7d53219a11a3f.zip
USB: EHCI: fix up locking
This patch (as1588) adjusts the locking in ehci-hcd's various halt, shutdown, and suspend/resume pathways. We want to hold the spinlock while writing device registers and accessing shared variables, but not while polling in a loop. In addition, there's no need to call ehci_work() at times when no URBs can be active, i.e., in ehci_stop() and ehci_bus_suspend(). Finally, ehci_adjust_port_wakeup_flags() is called only in situations where interrupts are enabled; therefore it can use spin_lock_irq rather than spin_lock_irqsave. Signed-off-by: Alan Stern <stern@rowland.harvard.edu> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to '')
0 files changed, 0 insertions, 0 deletions