DMA Test

Note  This content applies to the Windows Logo Kit (WLK). For the latest information using the new Windows Hardware Certification Kit (HCK), see Windows HCK User's Guide on the Windows Hardware Dev Center.

Type: Automated Test

Overview

The DMA test checks the ability of a driver to set a specified DMA (Direct Memory Access) timing mode for a device. The test checks that the driver can do so while I/O is pending without corrupting the transfer.

Details

The DMA test checks the ability of a driver to set a specified DMA (Direct Memory Access) timing mode for a device. For all devices in the system, the DMA test attempts to set all timing modes supported by the device. There are three variations: highest mode to lowest mode; lowest mode to highest mode; and lowest mode to highest mode with a pause (the default is 20,000 milliseconds) between variations. The test also runs multi-threaded file I/O in the background, runs file I/O with copy from each available source to each valid destination, compares the copied data, and reports passes or failures based on the compare function.

The DMA test is an automated test designed to ensure that ATA/ATAPI storage drivers correctly time devices as specified by the user or the system. If the system has a controller that supports ULTRADMA 3 or faster, you must attach an 80-pin cable for accurate results.

Run Time: 90 Minutes

**Log File:**dmatest.wtl

System Restart Required: No

Test Category:

Supported operating systems for Logo or Signature testing:

  • Windows Vista

  • Windows Server 2003

  • Windows XP

Program:

Requirements

Software Requirements

The test tool requires the following software:

Hardware Requirements

The test tool requires the following hardware:

Processor

The test tool runs on the following processor architectures:

Running DMA Test

This test requires a system with at least one ATA/ATAPI device to run. If a system is using the PCIIDE minidriver, the system fails all DMA variations except for PIO4 and the mode that the device was running at start time because the generic driver does not know which registers to use to set up timing modes. The test requires a CD with data be inserted in all CD drives connected to the controller, and will prompt on the client machine if this is not the case.

Command Syntax

Command option Description

DMATest.exe /ng /deviceinstance:"[WDKDeviceID]" /logo

 

Cautions

Make sure that any volumes on fixed disks are formatted and writeable.

Code Tour

File Manifest

File Location

DMATest.exe

...\tests\%ARCHITECTURE%\nttest\driverstest\storage\wdk

 

Test Assertions

 

PIO0 If PIO0 is supported, device must allow switching to PIO0 during IO.

Test Assertion GUID: 1e76d583-c379-11da-94f4-00123f3a6b60

 

Windows Logo Program: STORAGE-0004 ATA/ATAPI based devices meet ATA/ATAPI protocol requirements

 

 

PIO1 If PIO1 is supported, device must allow switching to PIO1 during IO.

Test Assertion GUID: 1e76d584-c379-11da-94f4-00123f3a6b60

 

Windows Logo Program: STORAGE-0004 ATA/ATAPI based devices meet ATA/ATAPI protocol requirements

 

 

PIO2 If PIO2 is supported, device must allow switching to PIO2 during IO.

Test Assertion GUID: 1e76d585-c379-11da-94f4-00123f3a6b60

 

Windows Logo Program: STORAGE-0004 ATA/ATAPI based devices meet ATA/ATAPI protocol requirements

 

 

PIO3 If PIO3 is supported, device must allow switching to PIO3 during IO.

Test Assertion GUID: 1e76d586-c379-11da-94f4-00123f3a6b60

 

Windows Logo Program: STORAGE-0004 ATA/ATAPI based devices meet ATA/ATAPI protocol requirements

 

 

PIO4 If PIO4 is supported, device must allow switching to PIO4 during IO.

Test Assertion GUID: 1e76d587-c379-11da-94f4-00123f3a6b60

 

Windows Logo Program: STORAGE-0004 ATA/ATAPI based devices meet ATA/ATAPI protocol requirements

 

 

SWDMA0 If SWDMA0 is supported, device must allow switching to SWDMA0 during IO.

Test Assertion GUID: 1e76d588-c379-11da-94f4-00123f3a6b60

 

Windows Logo Program: STORAGE-0004 ATA/ATAPI based devices meet ATA/ATAPI protocol requirements

 

 

SWDMA1 If SWDMA1 is supported, device must allow switching to SWDMA1 during IO.

Test Assertion GUID: 1e76d589-c379-11da-94f4-00123f3a6b60

 

Windows Logo Program: STORAGE-0004 ATA/ATAPI based devices meet ATA/ATAPI protocol requirements

 

 

SWDMA2 If SWDMA2 is supported, device must allow switching to SWDMA2 during IO.

Test Assertion GUID: 1e76d58a-c379-11da-94f4-00123f3a6b60

 

Windows Logo Program: STORAGE-0004 ATA/ATAPI based devices meet ATA/ATAPI protocol requirements

 

 

MWDMA0 If MWDMA0 is supported, device must allow switching to MWDMA0 during IO.

Test Assertion GUID: 1e76d58b-c379-11da-94f4-00123f3a6b60

 

Windows Logo Program: STORAGE-0004 ATA/ATAPI based devices meet ATA/ATAPI protocol requirements

 

 

MWDMA1 If MWDMA1 is supported, device must allow switching to MWDMA1 during IO.

Test Assertion GUID: 1e76d58c-c379-11da-94f4-00123f3a6b60

 

Windows Logo Program: STORAGE-0004 ATA/ATAPI based devices meet ATA/ATAPI protocol requirements

 

 

MWDMA2 If MWDMA2 is supported, device must allow switching to MWDMA2 during IO.

Test Assertion GUID: 1e76d58d-c379-11da-94f4-00123f3a6b60

 

Windows Logo Program: STORAGE-0004 ATA/ATAPI based devices meet ATA/ATAPI protocol requirements

 

 

UDMA0 If UDMA0 is supported, device must allow switching to UDMA0 during IO.

Test Assertion GUID: 1e76d58e-c379-11da-94f4-00123f3a6b60

 

Windows Logo Program: STORAGE-0004 ATA/ATAPI based devices meet ATA/ATAPI protocol requirements

 

 

UDMA1 If UDMA1 is supported, device must allow switching to UDMA1 during IO.

Test Assertion GUID: 1e76d58f-c379-11da-94f4-00123f3a6b60

 

Windows Logo Program: STORAGE-0004 ATA/ATAPI based devices meet ATA/ATAPI protocol requirements

 

 

UDMA2 If UDMA2 is supported, device must allow switching to UDMA2 during IO.Test Assertion GUID: 1e76d590-c379-11da-94f4-00123f3a6b60

 

Windows Logo Program: STORAGE-0004 ATA/ATAPI based devices meet ATA/ATAPI protocol requirements

 

 

UDMA3 If UDMA3 is supported, device must allow switching to UDMA3 during IO.

Test Assertion GUID: 1e76d591-c379-11da-94f4-00123f3a6b60

 

Windows Logo Program: STORAGE-0004 ATA/ATAPI based devices meet ATA/ATAPI protocol requirements

 

 

UDMA4 If UDMA4 is supported, device must allow switching to UDMA4 during IO.

Test Assertion GUID: 1e76d592-c379-11da-94f4-00123f3a6b60

 

Windows Logo Program: STORAGE-0004 ATA/ATAPI based devices meet ATA/ATAPI protocol requirements

 

 

UDMA5 If UDMA5 is supported, device must allow switching to UDMA5 during IO.

Test Assertion GUID: 1e76d593-c379-11da-94f4-00123f3a6b60

 

Windows Logo Program: STORAGE-0004 ATA/ATAPI based devices meet ATA/ATAPI protocol requirements

 

 

DMATEST ATA Controller must support switching transfer modes during IO.

Test Assertion GUID: 1e76d594-c379-11da-94f4-00123f3a6b60

 

Windows Logo Program: STORAGE-0004 ATA/ATAPI based devices meet ATA/ATAPI protocol requirements

 

Additional Information: The controller must not corrupt data or stop responding when switching transfer modes during IO.

 

Initializing Controller must be installed and set up as specified in the Logo Program Setup documentation.

Test Assertion GUID: 1e76d595-c379-11da-94f4-00123f3a6b60

 

Windows Logo Program: STORAGE-0004 ATA/ATAPI based devices meet ATA/ATAPI protocol requirements

 

Additional Information: Be sure to connect both the necessary Hard Disk(s) and optical device. Place non-blank media in the optical device.

 

 

Build date: 9/14/2012