On 12/14/2009 04:22 AM, Janos Haar wrote:Hello list,
I have posted to the common, because this theme is for more lists (ide,
sata, scsi), i think....
I know you will not like me guys, but i have one wish.... :-)
I am building cheap but big storages, and after 12 drive / PC i have faced
with one problem:
The too much spinup current wich made by the 12-16 drive at the same time.
In my actual case, in 12V, there is more than 2A / drive for some seconds.
I know, in SCSI, there is a jumper for this, and the card can wake up the
drives one by one, but i am using 2TB drives, and in SCSI/SAS this have
horrible price...
I have done some invesrtigation, and found this:
The most of the simple sata drives handles the PUIS mode (by set
features ata command), but unfortunately
only the professional and expensive raid cards supports the wakeing up.
If the cheap cards founds only 0 byte drives, this is not a problem at all,
because linux usually not use BIOS support fortunately. :-)
But i have found when i have spent a little time in google, and in the
documentation, linux doesn't support PUIS.
I think this would be great, and (relatively) simple to implement this
feature.
I can imagine in this way:
Wake up from PUIS is disabled by default, but can be enabled by command
line
parameter, or compile time configuration.
The drivers should send the wake up command one by one to the drives, waits
for RDY DSC, and than scan the drives, and register....
What do you think?
As far as I can see, if the drive reports it's in power-up in standby mode from the identify response, the kernel will send the command to spin up the drive. It might depend on whether parallel scan is enabled for the controller as far as whether they actually spin up one at a time, however.
(Now i am searching for the solution to send the wakeup command by user
program, and than do a "hotplug" in software only, but this is not an
"elegant" solution...)
Best Regards,
Janos Haar