Jeff Garzik wrote:
Douglas Gilbert wrote:

sdparm uses the START STOP UNIT SCSI command to start
and stop (spin up and spin down) SCSI devices.
Currently libata does not implement that SCSI command.
[Hopefully Jeff contradicts me.]


Correct.

Someone should submit a libata patch for this!

Jeff,
I could have a go at the SCSI half of it. According to
SAT, START STOP UNIT should only be allowed for non-packet
ATA devices. I assume your SATAPI code will the bypass
libata-scsi.c SAT layer.

SAT suggests libata should issue a ATA STANDBY (sector=0)
to "stop" the device. I can't see the STANDBY command (0xE2)
defined anywhere in libata or the ide subsystem (or their
headers).

The action to start the SATA device depends on the power
mode of the SATA device:
  - SLEEP: send a hardware or software reset: that should
    get it to ACTIVE or STANDBY mode
  - STANDBY or IDLE: send a (READ) VERIFY (sector=0) ATA
    to the command
  - ACTIVE: I assume this would be a nop

The START STOP UNIT SCSI command also has an "IMMED"iate
bit. That could just be ignored initially.

Is half a patch any use?

Doug Gilbert


-
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to