USB: add power/persist device attribute
authorAlan Stern <stern@rowland.harvard.edu>
Wed, 30 May 2007 19:39:33 +0000 (15:39 -0400)
committerGreg Kroah-Hartman <gregkh@suse.de>
Thu, 12 Jul 2007 23:34:30 +0000 (16:34 -0700)
commitb41a60eca833d76593d4dac8a59f5c38714194ee
treea7c5cf721d9978503c3c8c88183747cf954b8733
parent54515fe528d8c6f9bfaf7d0b9fffb908deecad78
USB: add power/persist device attribute

This patch (as920) adds an extra level of protection to the
USB-Persist facility.  Now it will apply by default only to hubs; for
all other devices the user must enable it explicitly by setting the
power/persist device attribute.

The disconnect_all_children() routine in hub.c has been removed and
its code placed inline.  This is the way it was originally as part of
hub_pre_reset(); the revised usage in hub_reset_resume() is
sufficiently different that the code can no longer be shared.
Likewise, mark_children_for_reset() is now inline as part of
hub_reset_resume().  The end result looks much cleaner than before.

The sysfs interface is updated to add the new attribute file, and
there are corresponding documentation updates.

Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Documentation/ABI/testing/sysfs-bus-usb
Documentation/usb/persist.txt
drivers/usb/core/Kconfig
drivers/usb/core/hub.c
drivers/usb/core/sysfs.c
include/linux/usb.h