ATA PASS THROUGH DIRECT on SAS BUS in Windows XP

1.3k views Asked by At

I want to send a "ATA Pass through Direct" command to a drive that is on the SAS(SATA attached SCSI) bus. The drive is SATA drive, in Windows XP(x86) envirnoment. I hoped there was a STP(SATA Tunneled Protocol) layer that would translate the ATA command to STP to send through SCSI bus to my SATA drive. However, when sending "ATA Pass through direct" command the Win32 API DeviceIOControl(), status returns an error "wrong functions". Does STP layer exists in Windows XP, it must, Win32 API Readfile()/Writefile() work. But how do I get "ATA Pass through direct" command to work with the Win32 API on SAS bus?

1

There are 1 answers

0
Meherzad On

If the drive is recognized as SCSI by Windows XP, then you will have to use IOCTL_SCSI_PASS_THROUGH_DIRECT and use SCSI to ATA translation protocol to send the required ATA Command. SAT specification can be found here.