[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <Pine.LNX.4.44L0.0901021056120.26494-100000@netrider.rowland.org>
Date: Fri, 2 Jan 2009 11:04:40 -0500 (EST)
From: Alan Stern <stern@...land.harvard.edu>
To: Yan Li <elliot.li.tech@...il.com>
cc: Tino Keitel <tino.keitel@....de>, <gregkh@...e.de>,
<linux-usb@...r.kernel.org>, <linux-kernel@...r.kernel.org>
Subject: Re: 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
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists