diff options
Diffstat (limited to 'usb.current/usb-obey-the-sysfs-power-wakeup-setting.patch')
| -rw-r--r-- | usb.current/usb-obey-the-sysfs-power-wakeup-setting.patch | 67 |
1 files changed, 0 insertions, 67 deletions
diff --git a/usb.current/usb-obey-the-sysfs-power-wakeup-setting.patch b/usb.current/usb-obey-the-sysfs-power-wakeup-setting.patch deleted file mode 100644 index 4e40090dc26da5..00000000000000 --- a/usb.current/usb-obey-the-sysfs-power-wakeup-setting.patch +++ /dev/null @@ -1,67 +0,0 @@ -From stern@rowland.harvard.edu Thu Jun 24 14:33:30 2010 -From: Alan Stern <stern@rowland.harvard.edu> -Date: Tue, 22 Jun 2010 16:14:48 -0400 (EDT) -Subject: USB: obey the sysfs power/wakeup setting -To: Greg KH <greg@kroah.com> -Message-ID: <Pine.LNX.4.44L0.1006221603330.1322-100000@iolanthe.rowland.org> - - -This patch (as1403) is a partial reversion of an earlier change -(commit 5f677f1d45b2bf08085bbba7394392dfa586fa8e "USB: fix remote -wakeup settings during system sleep"). After hearing from a user, I -realized that remote wakeup should be enabled during system sleep -whenever userspace allows it, and not only if a driver requests it -too. - -Indeed, there could be a device with no driver, that does nothing but -generate a wakeup request when the user presses a button. Such a -device should be allowed to do its job. - -The problem fixed by the earlier patch -- device generating a wakeup -request for no reason, causing system suspend to abort -- was also -addressed by a later patch ("USB: don't enable remote wakeup by -default", accepted but not yet merged into mainline). The device -won't be able to generate the bogus wakeup requests because it will be -disabled for remote wakeup by default. Hence this reversion will not -re-introduce any old problems. - -Signed-off-by: Alan Stern <stern@rowland.harvard.edu> -Cc: stable <stable@kernel.org> [.34] -Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> - - ---- - drivers/usb/core/driver.c | 13 +++---------- - 1 file changed, 3 insertions(+), 10 deletions(-) - ---- a/drivers/usb/core/driver.c -+++ b/drivers/usb/core/driver.c -@@ -1272,8 +1272,7 @@ static int usb_resume_both(struct usb_de - - static void choose_wakeup(struct usb_device *udev, pm_message_t msg) - { -- int w, i; -- struct usb_interface *intf; -+ int w; - - /* Remote wakeup is needed only when we actually go to sleep. - * For things like FREEZE and QUIESCE, if the device is already -@@ -1285,16 +1284,10 @@ static void choose_wakeup(struct usb_dev - return; - } - -- /* If remote wakeup is permitted, see whether any interface drivers -+ /* Enable remote wakeup if it is allowed, even if no interface drivers - * actually want it. - */ -- w = 0; -- if (device_may_wakeup(&udev->dev) && udev->actconfig) { -- for (i = 0; i < udev->actconfig->desc.bNumInterfaces; i++) { -- intf = udev->actconfig->interface[i]; -- w |= intf->needs_remote_wakeup; -- } -- } -+ w = device_may_wakeup(&udev->dev); - - /* If the device is autosuspended with the wrong wakeup setting, - * autoresume now so the setting can be changed. |
