Douglas Gilbert wrote:
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.

Mostly. There is still a few translation bits in there. 99% bypass, not 100%.


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).

I'm sure you're capable of adding an enum to linux/ata.h :)


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?

Sure.

        Jeff

-
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