Lines Matching +full:suspend +full:- +full:to +full:- +full:ram
1 .. _usb-persist:
3 USB device persistence during system suspend
13 According to the USB specification, when a USB bus is suspended the
14 bus must continue to supply suspend current (around 1-5 mA). This
16 detect connect-change events (devices being plugged in or unplugged).
20 required to behave as though the device has been unplugged. It's a
21 conservative approach; in the absence of suspend current the computer
22 has no way to know what has actually happened. Perhaps the same
26 By default, Linux behaves according to the spec. If a USB host
27 controller loses power during a system suspend, then when the system
28 wakes up all the devices attached to that controller are treated as
30 "officially correct" thing to do.
33 If the kernel wants to believe that your USB keyboard was unplugged
38 Unfortunately problems _can_ arise, particularly with mass-storage
41 filesystem on the device, you're out of luck -- everything in that
46 Loss of power isn't the only mechanism to worry about. Anything that
48 even though suspend current may have been maintained while the system
54 you can convince the BIOS supplier to fix the problem (lots of luck!).
57 suspend-to-RAM. On almost all systems, no suspend current is
58 available during hibernation (also known as swsusp or suspend-to-disk).
59 You can check the kernel log after resuming to see if either of these
62 In practice, people are forced to unmount any filesystems on a USB
65 suspended -- but it will crash as soon as it wakes up, which isn't
72 The kernel includes a feature called USB-persist. It tries to work
73 around these issues by allowing the core USB device data structures to
74 persist across a power-session disruption.
79 to each of the USB devices below that controller for which the
80 "persist" attribute is set. It doesn't try to resume the device; that
82 port reset and then re-enumerates the device. (This is exactly the
84 re-enumeration shows that the device now attached to that port has the
86 the kernel continues to use the same device structure. In effect, the
92 fails to carry out a normal resume.
94 If no device is now attached to the port, or if the descriptors are
104 Note that the "USB-persist" feature will be applied only to those
113 doesn't even exist, so you only have to worry about setting it for
123 to plug in a USB flash device, create a persistent volume associated
126 it would be more far-reaching than USB-persist.
130 solution is much quicker and easier -- and it exists now, a giant
133 Furthermore, the USB-persist feature applies to _all_ USB devices, not
134 just mass-storage devices. It might turn out to be equally useful for
138 WARNING: USB-persist can be dangerous!!
142 to make sure the USB device hasn't been changed; that is, the same
144 aren't guaranteed to be 100% accurate.
153 Furthermore it's quite possible to leave a USB device exactly the same
156 way to know you did it. The kernel will assume that nothing has
157 happened and will continue to use the partition tables, inodes, and
160 If the kernel gets fooled in this way, it's almost certain to cause
161 data corruption and to crash your system. You'll have no one to blame
170 at all. The USB-persist feature can be extremely useful. Make the