lkml.org 
[lkml]   [2009]   [Jan]   [2]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: Enable CONFIG_USB_SUSPEND by default or some mobile HD can't be unplugged safely
On Fri, 2 Jan 2009, Yan Li wrote:

> Now I know 3 methods supposed can be used to shut the device:
> 1. (Alan Stern said Windows use this) cut the USB port's power

I said no such thing! In fact, I said exactly the opposite: Windows
does _not_ cut the port's power. Instead it disables the port.

> 2. send STOP SCSI command to stop it

Note that this is different. The START-STOP command is used to spin-up
or spin-down a disk. It does not affect the state of the data link.

> 3. put it into suspend mode

As far as the device is concerned, there is essentially no difference
between 1 and 3. When the device's upstream port is disabled, the
device must go into suspend mode.

The best approach is to send a SYNCHRONIZE CACHE command followed by
START-STOP (if the device supports it), and then to disable or suspend
the port. In Linux, those two commands will be sent automatically if
you unbind the device from usb-storage. The suspend has to be done
manually unless you have set up a udev rule (or something equivalent)
to enable autosuspend for the device. Of course, this requires
CONFIG_USB_SUSPEND.

Alan Stern



\
 
 \ /
  Last update: 2009-01-02 17:07    [from the cache]
©2003-2011 Jasper Spaans. Advertise on this site