Test Cases for the USB Host-Controller Driver Test (Windows Embedded CE 6.0)
1/6/2010
This document describes the test cases included in the USB Host-Controller Driver test. It also describes dynamic changing of packet sizes on NetChip2280 devices and provides some ideas for manual tests. For more testing ideas beyond the test cases presented here, see Additional Testing with the USB Host-Controller Driver Test.
Standard tests
The following table shows the test case descriptions for the test cases in the USB Host Controller Driver test.
Test cases | Description |
---|---|
1001-1315, 1501-1515 |
There are five categories of tests for how the data is being transferred, denoted by the first two digits of the test ID, as follows:
Both synchronous and asynchronous transfer methods are used. Tests that use a synchronous transfer method have a 0 for the third digit (xx0x), while tests that use an asynchronous transfer method have a 1 for the third digit (xx1x). There are five categories of transfer-type tests, denoted by the final digit of the test ID, as follows:
Note:
This final category is designed for testing some other USB function devices with more endpoints than the host-controller driver can handle. Testers that use Netchip 2280 can ignore this category.
|
1401-1413 |
|
2001-2013 |
|
9001-9004 |
|
9005 |
|
Dynamic Packet Size Changing
By default, the data loopback device configures the endpoints with some often used, DWORD-aligned packet sizes. Having all the previously listed tests passes under this configuration is sufficient for build verification. Testers can also change the packet sizes for each endpoint, if they want; the values are hard-coded in the source code for net2280lppbk.dll.
Packet size is configurable by the jobs in the 3000 test case series. These jobs are not tests in themselves, but are executed to configure the device for a particular packet size before the related test is run. If you run one of the test cases in the 3000 series, the packet size set by the job in the given test case remains in effect until another test in the series is run, or the device is restarted.
Test case | Description |
---|---|
3001 |
Uses very small packet sizes in full-speed configuration. |
3002 |
Uses very small packet sizes in high-speed configuration. |
3003 |
Uses irregular packet sizes (for example, a non-DWORD-aligned size) in full-speed configuration. |
3004 |
Uses irregular packet sizes (for example, a non-DWORD-aligned size) in high-speed configuration. |
3005 |
High-speed only; uses very large packet sizes (for example, 2*1024 for isochronous endpoints) in full-speed configuration.
Note:
In real-world applications, NetChip2280 cannot handle such large packet sizes because its on-board FIFO buffer is too small.
|
Note
Some jobs are only valid for a device configured for full-speed mode, while other test cases apply only to a device configured for high-speed.
By running one of these test cases and then waiting for 15 to 20 seconds, you can see (through the Debug Output Window in Platform Builder) that usbtest.dll is being unloaded and then reloaded. This indicates that the packet sizes on the device side have been changed. You can then run the PC Card Driver Stack tests as you want. To restore default packet sizes, run test case 3011 (for full-speed configuration) or 3012 (for high-speed configuration).