Testing Serial ATA Hard Disk Drives and Serial ATA Optical Drives in DTM

A few issues have come up lately when testing Serial ATA devices and I wanted to share the problems testers are hitting.

  1. SATA-IO Sig Test is failing.

    • Solution: Download and install the latest errata filters from http://winqual.microsoft.com/member/SubmissionWizard/LegalExemptions/filterupdates.cab.  Re-save the submission CPK.

    • This test is designed to validate the Windows Logo Program Requirement STORAGE-001 requirement for SATA Devices:
      "All SATA devices must meet the requirements of the Serial ATA: High Speed Serialized AT Attachment, Version 2.1, (Version 2.5 is recommended and will be required for new devices on June 1 2007) by obtaining a Serial ATA International Organization (SATA-IO) logo certification."

    • The test is not required to pass until June 1, 2007 as stated in the requirement.  The filter applied to the submission will change any failing result for the test in to a pass.  This filter will automatically expire on June 1, 2007, and no longer turn the test into a pass.

    • In order to be prepared for this test, Serial ATA hardware vendors should start testing with SATA-IO NOW.  More information is available on the Serial ATA Interoperability website.

    • SATA-IO will give hardware vendors a digital certificate for their device once it has passed their testing.

    • To run the SATA-IO Sig test the user provides the certificate file by placing it (an xml file) on the client machine and then providing the path of the file to DTM by right clicking the job in device console and choosing "Add information".

  2. SCSI Compliance is appearing!

    • Important: This test is not required for SATA devices, but is appearing because of a problem in the hardware setup of the test machine.

    • Solution: Connect your Serial ATA device to a ATA/ATAPI class host controller that correctly identifies the bus type of its devices.  This is the only supported means for testing Serial ATA hard disks and optical drives.

    • You can tell if a Serial ATA host controller is an ATA/ATAPI class controller by looking in Device Manager.  ATA/ATAPI class controllers appear under the IDE ATA/ATAPI controllers category with the following icons:

      •  IDE ATA/ATAPI Controller icon (Vista)(Vista)

      •  IDE ATA/ATAPI Controller icon (Server 2003)(XP & Server 2003)

    • Many controllers offer a bios configuration page for changing the mode in which they operate.  If possible set the controller into IDE or AHCI mode.  This may change the driver used for the controller to an ATA/ATAPI class controller driver.

    • In order to effectively test Serial ATA devices we must send ATA commands to the device.  SCSI/RAID class host controllers have no mechanism for doing this. 

      • Tests that use ATA commands in SATA Device logo programs:

        1. SATA-IO Sig Test

        2. Piton Disk Test (Hybrid Hard Drive Test)

        3. Media Status Notification Test

        4. Media Lock Test

    • In addition to providing no means for testing ATA commands, SCSI/RAID class host controllers will often incorrectly identify the bus type of the devices they expose.  This is why SCSI Compliance is appearing.

      • SATA RAID controllers will often return BusTypeRaid for devices, even though the device is not part of a RAID array.

      • Many SATA controllers just return a completely incorrect bus type (IE: BusTypeScsi).  This is a violation of Windows Logo Program requirements and a test is being added to prevent these devices from getting a logo.

      • We recommend using AHCI controllers because we know that the MSAHCI driver reports the correct bus type.

    • If you are having trouble finding an ACHI controller with eSATA connections you could use an adapter such as this.

Comments (4)

  1. Bert Harless says:

    These add-in controllers have been showing up as SCSI devices for about 7 years now. I think the first time I remember seeing this was when hard drives went to UDMA and motherboards stopped at PIO mode 4. Either way, correctly identified or not they seemed to work OK. Somehow between the hard drive manufacturers and the card manufacturers they managed to get it right.  I can think a lot more cases where Microsoft dropped the ball and had to play catchup than hardware vendors.  Drive capacity issues come to mind, 2GB 4GB, 8GB, 128GB etc. So don't go gettin all high and mighty on us, you commit blunders too, you just don't want to admit them.  I've been doing the HCT testing for a lot of years and with it have never found a single hard drive problem. The whole thing was supposed to be about hardware compatibility, but I can think of no instance where it has proven or improved compatibility of hard drives.  Now it has just become a power trip where a bloated WHQL sins, and flogs someone else for it.  That's just my opinion, but I could be right.

  2. ericstj says:

    In regards to your concerns Bert: our testing requirements for SATA hard drives are absolutely necessary.  STORPORT and SCSIPORT miniports (SCSI/RAID class controllers) provide no mechanism for a test application to send ATA commands directly to the drive.  It is necessary send ATA commands to the drive because we trying to test the drive, and not the controller.  The reason why you may have been able to test using a SCSI class controller in the past is that the HCT did not have all of the tests that are in the WDK.  New ATA/SATA only technologies like Hybrid drives demand that we test in this manner.  The setup requirement has risen out of push towards more complete testing in the WHQL tests.  We are well aware that the HCT has been a burden in the past, but we are striving to change that.  I do not wish for our decisions to seem arbitrary and would be happy to answer any specific questions about information that you have been given.

  3. John says:

    This helped resolve my battle in why the hell dtm kept failing io related tests.

  4. mike says:

    Heard the required date to test the SATA-IO Sig Test has been delayed further. Can you update this information here? Thanks!

Skip to main content