USB: change handling of negative autosuspend delays
commit5899f1e020c8d53b2b6fbd6a6cf39c891ccdfade
authorAlan Stern <stern@rowland.harvard.edu>
Fri, 8 Jan 2010 17:57:02 +0000 (8 12:57 -0500)
committerGreg Kroah-Hartman <gregkh@suse.de>
Tue, 2 Mar 2010 22:54:11 +0000 (2 14:54 -0800)
treeacd9041996aa81db4bdc9a30fe1926e511d7eb77
parent088f7fec8a0e683db72fd8826c5d3ab914e197b1
USB: change handling of negative autosuspend delays

This patch (as1327) changes the way negative autosuspend delays
prevent device from autosuspending.  The current code checks for
negative values explicitly in the autosuspend_check() routine.  The
updated code keeps things from getting that far by using
usb_autoresume_device() to increment the usage counter when a negative
delay is set, and by using usb_autosuspend_device() to decrement the
usage counter when a non-negative delay is set.

This complicates the set_autosuspend() attribute method code slightly,
but it will reduce the overall power management overhead.

Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
drivers/usb/core/quirks.c
drivers/usb/core/sysfs.c