USB Host Driver Verification Tests (Compact 7)
3/12/2014
The USB Host-Controller Driver test verifies basic functionality of the USB host-controller driver. It can also be used to determine whether a given USB host-controller, either stand-alone or on-board logic, works correctly with Windows Embedded Compact.
Test Prerequisites
Your device must meet the following requirements before you run this test.
Hardware Requirements:
* The platform under test must have an onboard host-controller or a connected host-controller card.
Software Requirements for the USB Host Driver Verification Test are shown in the following table:
Requirement | Description |
---|---|
Tux.exe |
Test harness, required for executing the test. |
KTux.dll |
Test harness module, required for executing kernel-mode tests. |
Kato.dll |
Logging engine, required for logging the test data. |
usbhostbvt.dll |
Library containing the test code, loaded by the Tux test harness. |
Subtests
The table below lists the subtests included in this test.
SubTest ID | Description |
---|---|
100 |
Get USBD Version Test. This test gets the USB driver version using a helper function. |
101 |
Register Client Test. This test registers a client driver. |
102 |
Registry Test for Registered Client. This test verifies the registry of a client driver. |
103 |
Open Registry Test for Registered Client. This test verifies opening the registry of client driver. |
104 |
Get Client Registry Path for Registered Client Test. This test registers the client and checks the registry path. |
105 |
Unregister Client Test. This test unregisters a client driver. |
106 |
Registry Test for Unregistered Client. This test verifies the registry of a unloaded/non-existent client driver. |
107 |
Open Registry Test for UnRegistered Client. This test unregisters the client driver and tries to open the registry for an unloaded/non-existent client. |
108 |
Get Client Registry Path for UnRegistered Client Test. This test unregisters the client driver and checks the registry path for the unloaded/non-existent client. |
200 |
Suspend/Resume Get USBD Version Test This is an optional test. If enabled, this test ensures Current and Default client are correct after a suspend/resume cycle. If not enabled via the command line, it will simply skip. |
201 |
Suspend/Resume Registered Client Test This is an optional test. If enabled, this test ensures Current and Default client are correct after a suspend/resume cycle. If not enabled via the command line, it will simply skip. |
202 |
Suspend/Resume UnRegistered Client Test This is an optional test. If enabled, this test ensures Current and Default client are correct after a suspend/resume cycle. If not enabled via the command line, it will simply skip. |
Setting Up the Test
This test has no additional requirements, beyond the standard test environment setup.
Running the Test
By default, the USB Host Driver Verification Tests executes: "tux -o -n -d usbhostbvt".
The following table shows the command line parameter for the USB Host Driver Verification Test.
Command line parameter | Description |
---|---|
-c "-s" |
Enables Suspend/Resume for USB Function Driver Verification tests. This command line parameter enables Test IDs 200-202. |
Verifying the Test
When the test completes running, verify that "PASSED" appears in the test log for all sub-tests.
Troubleshooting the Test
* Determine the point of failure and record the exact error message.
* If the source code is available, examine the point of failure in code to see if any additional information can be gathered about the failure domain.
For additional platform specific issues, consult the CTK articles on the TechNet wiki.