USB Host Driver Verification Tests (Compact 2013)
3/26/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.