USB Implementers Forum
USB4 Interoperability Test Procedures
Revision 1.0 – June 2020
Copyright © 2020, USB Implementers Forum, Inc.
All rights reserved
THIS SPECIFICATION IS PROVIDED TO YOU “AS IS” WITH NO WARRANTIES WHATSOEVER, INCLUDING ANY WARRANTY OF MERCHANTABILITY, NON- INFRINGEMENT, OR FITNESS FOR ANY PARTICULAR PURPOSE. THE AUTHORS OF THIS SPECIFICATION DISCLAIM ALL LIABILITY, INCLUDING LIABILITY FOR INFRINGEMENT OF ANY PROPRIETARY RIGHTS, RELATING TO USE OR IMPLEMENTATION OF INFORMATION IN THIS SPECIFICATION. THE PROVISION OF THIS SPECIFICATION TO YOU DOES NOT PROVIDE YOU WITH ANY LICENSE, EXPRESS OR IMPLIED, BY ESTOPPEL OR OTHERWISE, TO ANY INTELLECTUAL PROPERTY RIGHTS.
USB Type-C™, USB-C™ and USB4™ are trademarks of the Universal Serial Bus Implementers Forum (USB-IF). Thunderbolt™ is a trademark of Intel Corporation. All product names are trademarks, registered trademarks, or service marks of their respective owners.
2
Contents SUMMARY OF CHANGES...... 6 RELATED DOCUMENTS ...... 7 TERMS AND ABBREVIATIONS ...... 8 1. INTEROPERABILITY TESTING ...... 9
1.1. EQUIPMENT ...... 10
1.1.1. Equipment Setup ...... 13
1.2. SOFTWARE REQUIREMENTS ...... 13
1.3. USB4 HOST CONTROLLER DRIVER INSTALLATION ...... 13
1.4. ENUMERATION AND DRIVER INSTALLATION FOR DEVICE/S ...... 14
1.5. USB4 INTEROPERABILITY LOGISTICAL OVERVIEW ...... 14
1.6. PRE-TEST REQUIREMENTS ...... 14
2. USB4 DEVICE INTEROPERABILITY TEST STEPS...... 16
2.1. DEVICE INTEROPERABILITY TESTS ...... 16
2.1.1. USB4 Host ↔ UUT (USB4 Device Under Test) Topology ...... 16
2.1.2. TBT3 Host ↔ UUT (USB4 Device Under Test) Topology ...... 18
2.1.3. USB4 Host ↔ USB4 Hub ↔ UUT (USB4 Device Under Test) Topology ...... 19
2.1.4. USB4 (5 Hops) Interop Tree Topology ...... 20
2.2. OPERATING POWER MEASUREMENT ...... 21
2.3. USB4 PERIPHERAL DEVICES BACKWARD COMPATIBILITY ...... 23
2.4. BILLBOARD REQUIREMENT ...... 24
2.5. USB4 DEVICE FUNCTIONAL TESTING ...... 25
2.5.2. NVM Update ...... 25
2.5.3. BIOS Testing ...... 26
2.5.4. Multiple UUT (See Figure 2-5) ...... 27
3. USB4 HOST INTEROPERABILITY ...... 29
3.1. HOST INTEROPERABILITY TESTS ...... 29
3
3.1.1. UUT (USB4 Host Under Test) ↔ USB4 Device/s ...... 29
3.1.2. UUT ↔ USB4 Devices and TBT3 Device...... 31
3.1.3. UUT (USB4 Host Under Test) ↔ USB4 Hub ↔ USB4 Device Topology ...... 32
3.1.4. UUT (USB4 Host Under Test) ↔ USB4 Hub ↔ TBT3 Dock (with Multiple Devices) ...... 33
3.1.5. USB4 (5 Hops) Interop Tree Topology ...... 34
3.1.6. Boot from USB4 Storage Device with OS ...... 34
3.2. HOST TO HOST COMMUNICATION ...... 37
3.2.1. UUT (USB4 Host Under Test) ↔ USB4 Host ...... 37
3.2.2. UUT (USB4 Host Under Test) ↔ TBT3 Host ...... 37
3.3. USB4 HOST SYSTEMS BACKWARD COMPATIBILITY ...... 39
3.4. USB4 HOST FUNCTIONAL TESTING ...... 40
3.4.1. Multiple Cycle Testing ...... 40
3.4.2. NVM Update ...... 41
3.4.3. BIOS Testing ...... 42
3.4.4. Multiple USB4 Devices (UUT with 2 or more DFP, see Figure 3-9) ...... 43
4. USB4 EXTERNALLY POWERED HUB/DOCK INTEROPERABILITY ...... 45
4.1. HUB/DOCK INTEROPERABILITY TESTS ...... 45
4.1.1. USB4 Host ↔ UUT (USB4 Hub Under Test) ↔ USB4 Device Topology ...... 45
4.1.2. USB4 Host ↔ UUT (USB4 Hub Under Test) ↔ USB4 Devices Topology ...... 48
4.1.3. USB4 Host ↔ UUT (USB4 Hub Under Test) ↔ TBT3 Dock (with Multiple Devices) ...... 50
4.1.4. TBT3 Host ↔ UUT ↔ TBT3 Device ...... 51
4.1.5. USB4 (5 Hops) Interop Tree Topology ...... 51
4.2. HOST TO HOST COMMUNICATION WITH USB4 HUB/DOCK IN BETWEEN ...... 53
4.2.1. USB4 Host ↔ UUT (USB4 Hub Under Test) ↔ USB4 Host ...... 53
4.2.2. USB4 Host ↔ UUT (USB4 Hub Under Test) ↔ TBT3 Host ...... 53
4.3. POWER MEASUREMENT...... 55
4.4. USB4 HUBS ENHANCED SUPERSPEED FUNCTION BACKWARD COMPATIBILITY ...... 57
4
4.5. BILLBOARD REQUIREMENT ...... 58
4.6. ADDITIONAL TESTING FOR USB4 DOCK ...... 59
4.6.1. TBT3 Host ↔ UUT (USB4 Dock Under Test) ↔ TBT3 Device ...... 59
4.7. USB4 HUB/DOCK FUNCTIONAL TESTING ...... 61
4.7.1. USB4 Hub/Dock Multiple Cycle Testing ...... 61
4.7.2. NVM Update ...... 61
4.7.3. BIOS Testing ...... 61
4.7.4. Multiple UUT (USB4 Hub Under Test, UFP and DFP) ...... 62
APPENDIX A INTEROPERABILITY TEST STEPS ...... 65
A.1 USB4 INTEROP TREE (5 HOPS) TOPOLOGY AND CONCURRENT OPERATION OF ALL DEVICES IN THE TREE ...... 65
A.2 INTEROPERABILITY TREE CONCURRENT OPERATION ...... 67
A.3 ALL DEVICES TESTS – INTEROPERABILITY TEST STEPS ...... 68
A.1.1 Inactive Detach & Reattach ...... 68
A.1.2 Active Detach & Reattach ...... 68
A.1.3 Sleep/Wake ...... 69
A.1.4 Hibernate/Resume ...... 70
A.1.5 Restart...... 72
A.1.6 Shutdown/Power On ...... 72
APPENDIX B DRIVER VERIFIER FOR OPERATING SYSTEMS ...... 73
B.1 LIST OF DRIVERS FOR WINDOWS 10 ...... 73
B.2 LIST OF DRIVERS FOR MACOS ...... 76
B.3 LIST OF DRIVERS FOR ANDROID OS ...... 76
B.4 LIST OF DRIVERS FOR CHROME OS ...... 76
APPENDIX C DEVICE ENUMERATION/REMOVAL VERIFICATION ...... 77
5
SUMMARY OF CHANGES
Revision: Author: Section: Change:
1.0 Sydney All First Release Fernandes
6
RELATED DOCUMENTS
Note: Latest versions of the documents and installers can be downloaded from www.usb.org website.
USB Type C Functional Test Specification
USB Type-C Product Test Matrix
USB Type-C and Power Delivery Source Power Requirements Test Specification
USB Power Delivery Tests xHCI Interoperability Test Procedures For Peripherals, Hubs and Hosts
(Legacy, USB Type-C and Power Delivery)
USB 3.1 Link Layer Test Specification
USB 3.2 Test Matrix
USB4CV, USB3CV and USB2CV (Compliance Test Specs included with Installers)
USB4 Specification
USB 3.2 Specification
USB 2.0 Specification
USB Power Delivery Specification
USB Type-C Specification
7
Terms and Abbreviations
Terms/Abbreviations Description
Active Cable A cable with additional electronics to condition the data path signals.
Driver Verifier Driver Verifier can subject Windows OS drivers to a variety of stresses and tests to find improper behavior.
Hibernate For interop testing Hibernate is a system low power state in which all the contents of memory are written to a file on the primary system drive: Windows OS: Hibernate can be enabled in the Start menu. Mac OS: On Mac OS there is only “Sleep” menu option. “Sleep” menu option can be made to Hibernate using a command in Terminal: sudo pmset –a hibernatemode 25
KGD Known Good Device.
KGH Known Good Hub.
OS Operating System.
Passive Cable A cable that does not incorporate any electronics to condition the data path signals.
Shutdown For interop testing this general term covers all flavors of Shutdown: Windows OS: Hybrid Shutdown (Fast Startup) and Shutdown.
Sleep For interop testing this general term covers all flavors of sleep (low power mode) across various operating systems: Windows OS: Sleep, Hybrid Sleep, Modern Standby. Mac OS: Sleep, Safe Sleep, Power Nap.
TBT3 Thunderbolt™ 3.
UUT Unit Under Test. This is a general term and can be used for Device Under Test, Host Under Test, Dock Under Test, or Hub Under Test.
8
1. Interoperability Testing
Interoperability testing makes use of an arrangement of Host, Hubs, and Devices known as the Interop Tree. Interoperability testing covers several areas including demonstrated operation and the device’s ability to operate and coexist with other devices. It also provides insight into usability issues of the device and the associated software.
The Interoperability test procedure is generic and should be applicable to the vast majority of devices. This document cannot cover all possible types, configurations and combinations of devices, hubs, hosts and docks. Thus, the application of the Interoperability test procedures may need to be modified in order to adequately test a unit for USB compliance. Test guidelines for unique devices that do not fall into categories outlined in this document should be brought to the attention of [email protected] for assistance.
Where features are listed as optional for a product, interoperability testing will either verify that the feature is either functional (if feature is supported) or that the product obeys the “no silent failure” rule (if feature is not supported).
9
1.1. Equipment
Note that the equipment listed, the test procedure steps, and the actual list of required tests are expected to change periodically. Please refer to www.usb.org website for the latest updates to the USB4 Interoperability test procedures.
Item Description/Model Qty
USB4 Host System A computer (for example a Desktop Tower) containing an available 1 slot for a Certified USB4 Host Card or an integrated Certified USB4 Host (for example, Phone/Tablet/Laptop etcetera) This USB4 Host must support the following protocols: • Enhanced SuperSpeed USB • DisplayPort • PCIe • Thunderbolt 3 Compatible • DP Alternate Mode
USB4 Hub Certified USB4 externally-powered hub with at least 3 downstream 5 facing ports and Billboard Device
TBT3 Display Monitor Certified 5K Thunderbolt 3 Display Monitor 2
DP Alt-Mode Monitor Certified 4K DisplayPort Display Monitor 2
TBT3 Device Certified TBT3 Storage Device 1
TBT3 Host Certified TBT3 Host 1
TBT3 Cable Certified TBT3 Maximum Length Cables 2 EA Types of cables: • Passive 40G (0.8m) • Passive 20G (2m) • Active 40G (2m)
USB4 Device with Certified USB4 Device with PCIe function 1 PCIe Function (USB4 PCIe Box with x16 slot for xHCI PCIe Card, PCIe Network Adapter Card, PCIe NVMe card with NVMe SSD)
10
USB4 40 Gbps Device Certified 40 Gbps Device with ESS Function 1
USB 3.2 Gen2 x1 hub Certified USB 3.2 Gen2 x1 externally-powered hub with at least 4 1 (externally-powered) downstream ports
HS hub w/MTT Certified USB externally-powered, high-speed hub with multiple 1 (externally-powered) TTs and at least 4 downstream ports
HS hub(externally- Certified USB externally-powered, high-speed hub with at least 4 1 powered) downstream ports
USB 3.2 Gen2 x1 Certified USB 3.2 Gen2 x1 MSC Device compliant with the Mass 1 MSC Device Storage Class
HS video camera Certified HighSpeed USB video camera compliant with the Video 1 Class
HS drive Certified USB high-speed mass storage device compliant with the 1 Mass Storage Class
Mouse Certified USB low-speed mouse compliant the Human Interface 1 Device (HID) Class
USB4 Cable Certified USB4 Maximum Length Cables Types of cables: 9 EA • Passive 40G • Passive 20G • Active 40G • Active 20G
One meter USB 3.2 Certified USB 3.2 Gen2 cable assembly 2 Gen2 USB cable
Five meter HS USB Certified USB 2.0 high-speed cable assembly 2 cable
Keyboard Certified USB keyboard 1
The Interop Tree consists of USB-IF certified, off-the-shelf, consumer devices. The tree uses either captive cables on the certified devices, or certified cables to connect the devices. The USB-IF does not identify specific makes and models of USB peripherals for
11
the Interop Tree. Given the very short shelf-life of most consumer products, it is not practical to maintain a list of specific products for the Interop Tree. Thus, the choice of Certified USB products is the responsibility of the tester.
To verify whether a device is certified, go to the USB-IF Integrators List (www.usb.org). Unfortunately, there are numerous uncertified products that illegally display the Certified USB Logo, so please verify that the product is on the Integrators List. Should the tester find an uncertified product displaying the Certified USB Logo, please report the violation to the USB-IF.
At the time of this document’s creation, there are not yet Certified USB4 hubs or Certified USB4 peripheral devices. Any Certified USB4 hub or peripheral device that is required for this testing procedure and not yet prevalent in the ecosystem may be substituted with an equivalent known good USB4 hub or USB4 peripheral device.
It is highly recommended that vendors expand in-house interoperability testing to include many more devices, hubs, hosts, docks and cables than the minimum required for the USB4 Interop Tree.
The following guidelines will help to select an appropriate product for the USB4 Interop Tree:
All Devices:
• All devices in the Interop Tree must allow System Sleep and Hibernation while they are active. Any device that does not allow System Sleep or Hibernation may not be included in the USB4 Interop Tree.
USB4 Host System:
• The system must be a high performance computer that can handle multiple audio, video devices.
• The motherboard needs to have an available slot to add the USB4 Host Card or have the USB4 Host integrated on the motherboard.
• A fast multiple core processor is required.
• Memory and disk storage should be sufficiently large to reduce performance degradation.
• The machine must support Sleep and Wake
• The machine must support Wake from PCI Express or Wake from PCIe Card.
12
USB Hubs in Interop Tree (USB4 Hubs, USB 3.2 Hubs, USB 2.0 Hubs):
• The USB4 Interop Tree can have up to 6 levels meaning a USB4 Device can be up to 5 Hops away from the USB4 Host along the spanning tree. The USB4 Hubs and Devices must contain a Billboard Device.
• The USB 3.2 hubs, and USB 2.0 hubs are required to be externally-powered, while the compound keyboards are required to be bus-powered. This is to ensure the Interop Tree exercises both externally-powered and bus-powered hubs.
1.1.1. Equipment Setup
Ensure that the latest BIOS and driver updates are installed for the motherboard by visiting the vendor’s product support website.
1.2. Software Requirements
For Interoperability tests, users are strongly encouraged to test with different operating systems such as: Windows, macOS, Chrome OS, Android, iOS, Linux, etcetera. This document does not detail setup for the various operating systems. Covering setups of all flavors of operating systems is beyond the scope of the interop procedure document.
Testing must be performed on a new and clean installation of the operating system. Instead of formatting the drive and installing the OS before every test run, using a disk imaging utility to restore a copy of a clean OS is acceptable.
A means of testing data integrity for data transfer to/from the mass storage device is required.
Both Large (2GB+ file) and Small Files (30MB+ file) are required for the data transfers in Interoperability tests.
1.3. USB4 Host Controller Driver Installation
1. Ensure that the USB4 Host System has a clean install of the OS. Turn off the Host System and install the USB4 Host controller into the Host System if it is not already integrated.
2. Power on the USB4 Host System.
3. The OS should automatically install the USB4 Host controller driver.
13
1.4. Enumeration and Driver Installation for Device/s
1. Do not install any drivers or software for any device prior to attaching the UUT (USB4 Device)/Interop Tree to the USB4 Host Controller.
2. Attach the UUT (USB4 Device) to any port on the USB4 Host Controller.
3. Follow the vendor-recommended driver installation procedure.
1.5. USB4 Interoperability Logistical Overview
Effectively, Interoperability is a consumer experience test of the product. It examines the product's ability to function correctly in normal system configurations. The following discussion is the rationale for the Interoperability tests so that the procedures can be modified to adequately test a product for compliance.
Because the primary features of USB4 are its "hot-plugging" and "plug and play" capabilities, the dynamic attachment of a USB4 Device and Hub is a tenet of USB4 certification for Devices, Hubs and Hosts. All USB4 capable hosts, hubs and devices must be able to operate correctly on attachment and re-attachment of the device and/or hub. After the testing system is identified as a stable environment before running test, if any enumeration attempt fails, the test must be recorded as a fail.
No Silent Failure rule – USB4 devices are not allowed to appear broken without providing feedback to the consumer about the cause of the problem and how to correct. Thus, compliance enforces a "no silent failure" rule on hosts, hubs and devices in special situations where the device appears broken. Typically, the "no silent failure" is implemented when the device/hub is not supported by the host, there is insufficient bandwidth on the bus for the device to operate, or there is insufficient power available. When implemented, the message must appear on the host machine and not just in documentation. There must be enough information for the Operating System to understand why the device does not work. In other words, a USB4 device is never to appear broken without justification to the Operating System.
Consumer experience is the most important factor when assessing a Pass or Fail result. If the test result yields any kind of negative consumer experience, the test must be recorded as a fail.
1.6. Pre-Test Requirements
A vendor must do the following before submitting a product for USB4 compliance:
• Run the Multiple Cycle Tests for 1000 iterations and provide test logs. The UUT must pass each iteration of each test. Multiple Cycle Tests are defined in Section 2.5.1.1 for a USB4 Device, Section 3.4.1 for a USB4 Host, and Section 4.7.1 for a USB4 Hub or Dock.
14
Note: vendor is required to submit test logs when registering for USB4 certification
15
2. USB4 Device Interoperability Test Steps 2.1. Device Interoperability Tests
A USB4 device can be up to 5 hops away from the USB4 Host along the Interop tree.
2.1.1. USB4 Host ↔ UUT (USB4 Device Under Test) Topology
Connect the UUT (USB4 Device) to the USB4 host using a USB4 Cable as shown in Figure 2-1.
USB4 Host
USB4 Cable
UUT
Figure 2-1: USB4 Host ↔ UUT (USB4 Device Under Test) Topology
2.1.1.1. Peripheral Enumeration and Driver Installation for UUT
Note: Refer to section 1.3 and 1.4 to install drivers for UUT.
Pass: • Device enumerates AND • Drivers are installed either automatically or through the vendor recommended install procedure AND • System does not require a reboot (unless required by the OS) AND • DUT is correctly identified by OS and there are no silent failures
16
AND • (Software installs without any software crashes OR • No software required)
Fail: • Any device cannot be installed because it requires driver installation or application software BEFORE the device is ever plugged in OR • Any device does not enumerate or system software/OS crashes during enumeration OR • System requires a reboot OR • Any device is incorrectly identified by Device Manager or any device is flagged as not operational OR • Installation software crashes
2.1.1.2. All Devices Tests – Interoperability Test Steps
• Run Test Steps A.1.1 - A.1.6 as specified in Appendix A.
• Repeat with all USB4 cable types (see Section 1.1).
Pass: • Tests A.1.1 - A.1.6 in Appendix A PASS Fail: • Any of tests A.1.1 - A.1.6 in Appendix A FAIL
17
2.1.2. TBT3 Host ↔ UUT (USB4 Device Under Test) Topology
Connect the UUT to TBT3 host using a USB4 Cable as shown in Figure 2-2.
TBT3 Host
Thunderbolt 3 Cable
UUT
Figure 2-2: TBT3 Host ↔ UUT (USB4 Device Under Test) Topology
2.1.2.1. All Devices Tests – Interoperability Test Steps
• Run Test Steps A.1.1 - A.1.6 as specified in Appendix A.
• Repeat with all TBT3 cable types (see Section 1.1).
Pass:
• Tests A.1.1 - A.1.6 in Appendix A PASS
Fail:
• If any of tests A.1.1 - A.1.6 in Appendix A FAIL
18
2.1.3. USB4 Host ↔ USB4 Hub ↔ UUT (USB4 Device Under Test) Topology
Connect the DUT in a topology as shown in Figure 2-3.
USB4 Host
USB4 Cable
USB4 Hub
USB4 Cable
UUT
Figure 2-3: USB4 Host ↔ USB4 Hub ↔ UUT (USB4 Device Under Test) Topology
2.1.3.1. All Devices Tests – Interoperability Test Steps
• Run Test Steps A.1.1 - A.1.6 as specified in Appendix A.
• Repeat with all USB4 cable types (see Section 1.1).
Pass:
• Tests A.1.1 - A.1.6 in Appendix A PASS
Fail:
• If any of tests A.1.1 - A.1.6 in Appendix A FAIL
19
2.1.4. USB4 (5 Hops) Interop Tree Topology
Construct the Interop tree as specified in Appendix A.
2.1.4.1. All Devices Tests – Interoperability Test Steps
• Run tests A.1.1 - A.1.6 as specified in Appendix A.
• Repeat tests with all types of USB4 cables (see Section 1.1).
Pass:
• All Interop Tree devices operate correctly
Fail:
• One or more Interop Tree devices fail to operate correctly
20
2.2. Operating Power Measurement
Operating Power Measurement test needs to be run for all Device Under Test.
1. Connect a Power Measurement Fixture between UUT and USB4 host as shown in Figure 2-4.
2. Operate the device such that it’s functioning in its maximum power consumption mode for long enough to capture a peak measurement.
3. Capture the power measurements and analyze the maximum power consumption wattage, for the period of operation.
Power Meter
USB4 Power Measurement UUT Host Fixture
Figure 2-4: Device Power Consumption Measurement Topology
Pass:
• Power consumed by the UUT from the USB4 host is less than equal to 7.5W
Fail:
• Power consumed by the UUT from the USB4 host is greater than 7.5W
For Externally Powered Devices:
1. Connect a Power Measurement Fixture between UUT and USB4 host as shown in Figure 2-4.
2. Capture the power measurements and analyze.
3. Unplug the External Power Supply to the device and capture power measurement.
21
Pass:
• For Externally Powered UUT (with External Power Supply unplugged from the UUT), power consumed by the UUT from the host port is less than or equal to 10 mW
• For Externally Powered UUT (with External Power Supply plugged into the UUT), power consumed by the UUT from the host port should be 0 mW
Fail:
• For Externally Powered UUT (with External Power Supply unplugged from the UUT) power consumed by the UUT from the host port is greater than 10 mW
• For Externally Powered UUT (with External Power Supply plugged into the UUT), power consumed by the UUT from the host port is greater than 0 mW
22
2.3. USB4 Peripheral Devices Backward Compatibility
All USB4 devices with Enhanced SuperSpeed Function will need to be compliant to USB3.2 Certification Requirements.
DP Multi-function testing of devices (where applicable) is required to be tested as part of USB3.2 Certification Requirements.
23
2.4. Billboard Requirement
A USB4 Device must present a Billboard Device in the following cases:
• When the USB4 Device (e.g. PCIe Endpoint, DisplayPort Source or Sink, etcetera) does not have an equivalent Enhanced SuperSpeed Function.
• When the USB4 Device is not Thunderbolt 3 compatible and it is connected to a Thunderbolt 3 Host.
A Billboard Device informs the end-user and complies with the “No Silent Failure” Rule. The Billboard Device must adhere to the USB 2.0/3.2 Compliance Requirements.
24
2.5. USB4 Device Functional Testing 2.5.1.1. Multiple Cycle Testing
1. Connect the UUT to USB4 host using a USB4 Cable as shown in Figure 2-1.
2. Run tests A.1.1, and A.1.3 - A.1.6 (as specified in Appendix A) 10 times. Each test must be performed a total of 10 times. For each cycle verify that the UUT enumerates.
2.5.2. NVM Update 2.5.2.1. UUT (USB4 Device Under Test) Firmware Update
1. Vendor provides utility and procedure for updating firmware
2. Update firmware according to procedure
3. Verify firmware update according to procedure
25
2.5.3. BIOS Testing
Note: The test in this section are only run if the USB4 hosts supports a pre-OS environment.
2.5.3.1. Inactive Detach/Reattach
1. Power on USB4 Host.
2. Boot to pre-OS environment (e.g. EFI shell).
3. Connect the UUT to a USB4 Host as shown in Figure 2-1.
4. Verify UUT enumeration.
5. Unplug the UUT.
6. Verify UUT removal.
2.5.3.2. Restart
1. Connect the UUT to a USB4 Host as shown in Figure 2-1.
2. Power on USB4 Host.
3. Verify UUT enumeration.
4. Restart USB4 Host.
5. Boot to pre-OS environment (e.g. EFI shell).
6. Verify UUT enumeration.
2.5.3.3. Shutdown/Power On
1. Connect the UUT to a USB4 Host as shown in Figure 2-1.
2. Power on USB4 Host.
3. Boot to pre-OS environment (e.g. EFI shell).
4. Verify UUT enumeration.
26
2.5.4. Multiple UUT (See Figure 2-5)
Note: This test requires a USB4 Host with 2 DFP and 2 instances of the UUT (USB4 Devices Under Test)
1. Connect the first UUT to the USB4 Host.
2. Verify that the first UUT enumerates.
3. Connect a second UUT to the USB4 Host.
4. Verify that the second UUT enumerates.
5. Unplug the second UUT.
6. Verify removal of second UUT.
7. Unplug the first UUT.
8. Verify removal of the first UUT.
9. Repeat so test is performed with all of the following:
o UUT1 plugged→UUT2 plugged→UUT1 unplugged→UUT2 unplugged
o UUT1 plugged→UUT2 plugged→UUT2 unplugged→UUT1 unplugged
o UUT2 plugged→UUT1 plugged→UUT1 unplugged→UUT2 unplugged
o UUT2 plugged→UUT1 plugged→UUT2 unplugged→UUT1 unplugged
USB4 Host
USB4 Cables
UUT1 UUT2
27
Figure 2-5: USB4 Host ↔ Two UUT (USB4 Devices Under Test) Topology
28
3. USB4 Host Interoperability 3.1. Host Interoperability Tests
If the system has multiple USB4 hosts built in, Interoperability should be performed on each host.
3.1.1. UUT (USB4 Host Under Test) ↔ USB4 Device/s
Connect a USB4 device on one of exposed ports of the UUT as shown in Figure 3-1.
UUT
USB4 Cable
USB4 Device
Figure 3-1: UUT (USB4 Host Under Test) ↔ USB4 Device
3.1.1.1. Enumeration and Driver Installation
Refer to section 1.3 and 1.4 to install drivers for USB4 Devices.
Pass:
• Device enumerates
AND
• Drivers are installed either automatically or through the vendor recommended install procedure
AND
• System does not require a reboot (unless required by the OS)
29
AND
• DUT is correctly identified by OS and there are no silent failures
AND
• (Software installs without any software crashes
OR
• No software required)
Fail:
• Any device cannot be installed because it requires driver installation or application software BEFORE the device is ever plugged in
OR
• Any device does not enumerate or system software/OS crashes during enumeration
OR
• System requires a reboot
OR
• Any device is flagged as not operational
OR
• Installation software crashes
3.1.1.2. All Devices Tests – Interoperability Test Steps
• Run tests A.1.1 - A.1.6 as specified in Appendix A.
• Repeat this test for each port on the host.
• Repeat this test for each type of USB4 Device (Enhanced SuperSpeed Function, PCIe Function, DP Display), Thunderbolt 3 Device, DP Alt-Mode Device, USB4 20G Device, USB4 40G Device.
30
• Repeat tests with all types of USB4 cables (see Section 1.1).
Pass:
• Tests A.1.1 - A.1.6 in Appendix A PASS
Fail:
• If any of tests A.1.1 - A.1.6 in Appendix A FAIL
3.1.2. UUT ↔ USB4 Devices and TBT3 Device
If a USB4 Host has multiple exposed USB4 Ports, then populate all ports with Devices as shown in Figure 3-2. Figure 3-2 shows an example of a USB4 Host with 4 Ports. This setup needs to be modified if the USB4 Host has greater than or less than 4 ports.
UUT
USB4 Cable
USB4 Device (PCIe Function)
USB4 Cable USB4 Cable
USB4 20G Device
TBT3 Cable
USB4 Device TBT3 (DP Display) Device
Figure 3-2: Root Port Testing at USB4 Host with Multiple Devices
31
3.1.2.1. All Devices Tests – Interoperability Test Steps
• Run tests A.1.1 - A.1.6 (as specified in Appendix A) with all devices operating concurrently.
• Repeat this test with a combination of multiple USB4 Devices (Enhanced SuperSpeed Function, PCIe Function, DP Display), TBT3 Devices, DP Alt-Mode Device, connected on various exposed Host ports to test concurrently.
• Repeat tests with all types of USB4 cables (see Section 1.1). Pass:
• Tests A.1.1 - A.1.6 in Appendix A PASS
Fail:
• If any of tests A.1.1 - A.1.6 in Appendix A FAIL
3.1.3. UUT (USB4 Host Under Test) ↔ USB4 Hub ↔ USB4 Device Topology
Connect a USB4 device on one of exposed ports of the UUT as shown in Figure 3-3.
UUT
USB4 Cable
USB4 Hub
USB4 Cable
USB4 Device
Figure 3-3: UUT (USB4 Host Under Test) ↔ USB4 Hub ↔ USB4 Device Topology
3.1.3.1. All Devices Tests – Interoperability Test Steps
• Run tests A.1.1 - A.1.6 as specified in Appendix A.
32
• Repeat this test for each port on the host.
• Repeat this test for each type of USB4 Device (Enhanced SuperSpeed Function, PCIe Function, DP Display), TBT3 Device, DP Alt-Mode Device, USB4 20G Device, USB4 40G Device, USB 3.2 Device, USB2.0, PCIe Device.
• Repeat tests with all types of USB4 cables (see Section 1.1). Pass:
• Tests A.1.1 - A.1.6 in Appendix A PASS
Fail:
• If any of tests A.1.1 - A.1.6 in Appendix A FAIL
3.1.4. UUT (USB4 Host Under Test) ↔ USB4 Hub ↔ TBT3 Dock (with Multiple Devices)
Connect a USB4 Hub (with a TBT3 Dock attached on the USB4 Hub downstream facing port) on one of exposed ports of the UUT as shown in Figure 3-4. To the TBT3 Dock attach 2 DisplayPort Monitors, PCIe Storage Device, TBT3 Device and a USB 2.0 and USB 3.X Devices.
UUT
USB4 Cable
USB4 Hub
TBT3 Cable
TBT3 Dock
Figure 3-4: UUT (USB4 Host Under Test) ↔ USB4 Hub ↔ TBT3 Dock (with Multiple Devices) Topology
33
3.1.4.1. All Devices Tests – Interoperability Test Steps
• Run tests A.1.1 - A.1.6 as specified in Appendix A.
• Repeat this test for each port on the host.
• Repeat tests with all types of USB4 and TBT3 cables (see Section 1.1).
Pass:
• Tests A.1.1 - A.1.6 in Appendix A PASS
Note: If the UUT only supports one display, then the first connected monitor must work. If the UUT supports multiple displays, then both connected monitors must work. Fail:
• If any of tests A.1.1 - A.1.6 in Appendix A FAIL
3.1.5. USB4 (5 Hops) Interop Tree Topology
Construct the Interop tree as specified in Appendix A.
3.1.5.1. All Devices Tests – Interoperability Test Steps
Run tests A.1.1 - A.1.6 as specified in Appendix A.
Repeat tests with all types of USB4 cables (see Section 1.1).
Pass:
• All Interop Tree devices operate correctly
Fail:
• One or more Interop Tree devices fail to operate correctly
3.1.6. Boot from USB4 Storage Device with OS
Connect a USB4 storage device with OS on one of exposed ports of the UUT as shown in Figure 3-5.
34
UUT
USB4 Cable
USB4 Storage Device with OS
Figure 3-5: UUT (USB4 Host Under Test) ↔ USB4 Storage Device
• Power on the USB4 Host System and Enter BIOS.
• Enable boot from USB4 Device (if not enabled).
• Boot from USB4 storage device and verify the USB4 Host System booted from USB4 Device.
• Restart the USB4 Host System and verify the USB4 Host system booted from the primary drive (local storage).
• Connect a Keyboard to the USB4 Host System, Restart the Host and verify BIOS can be entered using the Keyboard connected to the UUT.
Pass:
• USB4 Host system boots from USB4 Storage Device when configured in the BIOS and BIOS can be entered using a Keyboard attached to the UUT
Fail:
• USB4 Host system does not boot from USB Storage Device or BIOS cannot be entered with Keyboard connected to the UUT, or System fails to reboot from local storage after restart
35
36
3.2. Host to Host Communication 3.2.1. UUT (USB4 Host Under Test) ↔ USB4 Host
1. Connect a USB4 Host to the UUT as shown in Figure 3-6.
Note: USB4 Hosts need to run the same operating system
2. Transfer a file from the UUT to the USB4 host.
3. Verify that the file transfer either completes successfully or displays message (e.g. warning that transfer not supported) to tester.
4. Run tests A.1.1 - A.1.6 as specified in Appendix A.
5. Repeat this test for each DFP of the UUT.
UUT
USB4 Cable
USB4 Host
Figure 3-6: Host to Host Communications
3.2.2. UUT (USB4 Host Under Test) ↔ TBT3 Host
1. Connect the USB4 Host to a Thunderbolt 3 Host as shown in Figure 3-7.
Note: The USB4 Host and TBT3 Host need to run the same operating system.
2. If UUT does not support TBT3-compatibility:
o Verify that it displays a message to the tester (e.g. warning that Thunderbolt 3 is not supported)
37
o End test here
3. Transfer a file from the UUT to the TBT3 host.
4. Verify that the file transfer either completes successfully or displays message (e.g. warning that transfer not supported) to tester.
5. Run tests A.1.1 - A.1.6 as specified in Appendix A.
6. Repeat this test for each DFP of the UUT.
UUT
TBT3 Cable
TBT3 Host
Figure 3-7: USB4 Host to TBT3 Host Communications
38
3.3. USB4 Host Systems Backward Compatibility
All USB4 Hosts with Enhanced SuperSpeed Function will need to be backward compatible and compliant to USB3.2 Certification Requirements.
DP Multi-function testing of Host ports is required to be tested as part of USB3.2 Certification Requirements.
39
3.4. USB4 Host Functional Testing 3.4.1. Multiple Cycle Testing
UUT
USB4 Cable1
USB4 Hub1
USB4 Cable2
USB4 Hub2
USB4 Cable3
USB4 Hub3
USB4 Cable4
USB4 Hub4
USB4 Cable5
USB4 Hub5
Figure 3-8: UUT (USB4 Host Under Test) connected with 5 USB4 Hubs
1. Connect 5 USB4 Hubs to the UUT as shown in Figure 3-8.
2. Run tests A.1.1, and A.1.3 - A.1.6 (as specified in Appendix A) 10 times i.e. each test must be performed a total of 10 times. For each cycle verify that all USB4 Hubs enumerate.
o Perform test on each DFP of the UUT, individually.
40
3.4.2. NVM Update 3.4.2.1. USB4 Device Firmware Update
1. Vendor provides utility and procedure for updating firmware
2. Update firmware according to procedure
3. Verify firmware update according to procedure
41
3.4.3. BIOS Testing
Note: The test in this section are only run if the USB4 hosts supports a pre-OS environment.
3.4.3.1. Inactive Detach/Reattach
1. Power on USB4 Host Under Test.
2. Boot to pre-OS environment (e.g. EFI shell).
3. Connect the USB4 Device to the UUT USB4 Host as shown in Figure 3-1.
4. Verify USB4 Device enumeration.
5. Unplug the USB4 Device.
6. Verify USB4 Device removal.
3.4.3.2. Restart
1. Connect the USB4 Device to the UUT (USB4 Host Under Test) as shown in Figure 3-1.
2. Power on USB4 Host.
3. Verify USB4 Device enumeration.
4. Restart USB4 Host.
5. Boot to pre-OS environment (e.g. EFI shell).
6. Verify USB4 Device enumeration.
3.4.3.3. Shutdown/Power On
1. Connect the USB4 Device to the UUT (USB4 Host Under Test) as shown in Figure 3-1.
2. Shutdown and Power On USB4 Host Under Test.
3. Boot to pre-OS environment (e.g. EFI shell).
4. Verify USB4 Device enumeration.
42
3.4.4. Multiple USB4 Devices (UUT with 2 or more DFP, see Figure 3-9)
Note: For this test USB4 Device1 and USB4 Device2 need to be identical.
1. Connect the first USB4 Device to the UUT.
2. Verify that the first USB4 Device enumerates.
3. Connect a second USB4 Device to the UUT.
4. Verify that the second USB4 Device enumerates.
5. Unplug the second USB4 Device.
6. Verify removal of second USB4 Device.
7. Unplug the first USB4 Device.
8. Verify removal of the first USB4 Device.
9. Repeat so test is performed with all of the following:
o USB4 Device1 plugged→USB4 Device2 plugged→USB4 Device1 unplugged→USB4 Device2 unplugged o USB4 Device1 plugged→ USB4 Device2 plugged→ USB4 Device2 unplugged→ USB4 Device1 unplugged o USB4 Device2 plugged→ USB4 Device1 plugged→ USB4 Device1 unplugged→ USB4 Device2 unplugged o USB4 Device2 plugged→ USB4 Device1 plugged→ USB4 Device2 unplugged→ USB4 Device1 unplugged
43
UUT
USB4 Cables
USB4 USB4 Device1 Device2
Figure 3-9: UUT↔ Two USB4 Devices Topology
44
4. USB4 Externally Powered Hub/Dock Interoperability 4.1. Hub/Dock Interoperability Tests
A USB4 Hub consists of one Upstream Facing Port and one or more Downstream Facing Ports typically for the purpose of port expansion. A USB4 device can be up to 5 hops away from the USB4 Host along the Interop tree.
4.1.1. USB4 Host ↔ UUT (USB4 Hub Under Test) ↔ USB4 Device Topology
Connect a USB4 device on one of exposed ports of the UUT (USB4 Hub Under Test) as shown in Figure 4-1.
USB4 Host
USB4 Cable
UUT
USB4 Cable
USB4 Device
Figure 4-1: USB4 Host ↔ UUT (USB4 Hub Under Test) ↔ DUT Topology
4.1.1.1. Enumeration and Driver Installation
Refer to section 1.3 and 1.4 to install drivers for USB4 Devices
Pass:
• Device enumerates
AND
• Drivers are installed either automatically or through the vendor recommended install procedure
45
AND
• System does not require a reboot (unless required by the OS)
AND
• DUT is correctly identified by OS and there are no silent failures
AND
• (Software installs without any software crashes
OR
• No software required)
Fail:
• Any device cannot be installed because it requires driver installation or application software BEFORE the device is ever plugged in
OR
• Any device does not enumerate or system software/OS crashes during enumeration
OR
• System requires a reboot
OR
• Any device is flagged as not operational
OR
• Installation software crashes
4.1.1.2. All Devices Tests – Interoperability Test Steps
• Run tests A.1.1 - A.1.6 as specified in Appendix A.
• Repeat this test for each port on the hub.
46
• Repeat this test for each type of USB4 Device (Enhanced SuperSpeed Function, PCIe Function, DP Display), Thunderbolt 3 Device, DP Alt-Mode Device, USB4 20G Device, USB4 40G Device, USB 3.2 Device, USB2.0, PCIe Device.
• Repeat tests with all types of USB4 cables (see Section 1.1).
Pass:
• Tests A.1.1 - A.1.6 in Appendix A PASS
Fail:
• If any of tests A.1.1 - A.1.6 in Appendix A FAIL
47
4.1.2. USB4 Host ↔ UUT (USB4 Hub Under Test) ↔ USB4 Devices Topology
For the UUT (USB4 Hub Under Test) populate all exposed Down Stream Facing (DFP) ports with Devices as shown in Figure 4-2.
USB4 Host
USB4 Cable
UUT
USB4 Cable
USB4 Device (PCIe Function) USB4 Cable USB4 Cable
USB4 20G Device
Thunderbolt 3 Cable Thunderbolt 3 USB4 Device Device (DP Display)
Figure 4-2: UUT (USB4 Hub Under Test) with DFPs Populated with Devices
4.1.2.1. All Devices Tests – Interoperability Test Steps
• Run tests A.1.1 - A.1.6 as specified in Appendix A with all devices operating concurrently.
• Repeat this test with a combination of multiple USB4 Devices (Enhanced SuperSpeed Function, PCIe Function, DP Display), Thunderbolt 3 Device, DP Alt-Mode Device, USB 3.2, USB 2.0, PCIe devices connected on various exposed Hub ports to test concurrently.
• Repeat tests with all types of USB4 cables (see Section 1.1).
48
Pass:
• Tests A.1.1 - A.1.6 in Appendix A PASS
Fail:
• If any of tests A.1.1 - A.1.6 in Appendix A FAIL
49
4.1.3. USB4 Host ↔ UUT (USB4 Hub Under Test) ↔ TBT3 Dock (with Multiple Devices)
Connect a TBT3 dock on one of exposed ports of the UUT (USB4 Hub Under Test) as shown in Figure 4-3. To the TBT3 Dock, attach 2 DisplayPort Monitors, a PCIe Storage Device, a TBT3 Device, a USB 2.0 Device, and a USB 3.x Device.
USB4 Host
USB4 Cable
UUT
TBT3 Cable
TBT3 Dock
Figure 4-3: USB4 Host ↔ UUT (USB4 Hub Under Test) ↔ TBT3 Dock (with Multiple Devices) Topology
4.1.3.1. All Devices Tests – Interoperability Test Steps
• Run tests A.1.1 - A.1.6 as specified in Appendix A.
• Repeat this test for each port on the Hub Under Test.
• Repeat tests with all types of USB4 and TBT3 cables (see Section 1.1).
Pass:
• Tests A.1.1 - A.1.6 in Appendix A PASS
Fail:
• If any of tests A.1.1 - A.1.6 in Appendix A FAIL
50
4.1.4. TBT3 Host ↔ UUT ↔ TBT3 Device
Connect a TBT3 device on one of exposed ports of the UUT (USB4 Hub Under Test) as shown in Figure 4-4.
TBT3 Host
USB4 Cable
UUT
TBT3 Cable
TBT3 Device
Figure 4-4: TBT3 Host ↔ UUT (USB4 Hub Under Test)↔ TBT3 Device Topology
4.1.4.1. All Devices Tests – Interoperability Test Steps
• Run tests A.1.1 - A.1.6 as specified in Appendix A.
• Repeat this test for each port on the Hub Under Test.
• Repeat tests with all types of USB4 and TBT3 cables (see Section 1.1).
Pass:
• Tests A.1.1 - A.1.6 in Appendix A PASS
Fail:
• If any of tests A.1.1 - A.1.6 in Appendix A FAIL
4.1.5. USB4 (5 Hops) Interop Tree Topology
Construct the Interop tree as specified in Appendix A.
51
4.1.5.1. All Devices Tests – Interoperability Test Steps
• Run tests A.1.1 - A.1.6 as specified in Appendix A.
• Repeat tests with all types of USB4 cables (see Section 1.1).
Pass:
• Tests A.1.1 - A.1.6 in Appendix A PASS
Fail:
• If any of tests A.1.1 - A.1.6 in Appendix A FAIL
52
4.2. Host to Host Communication with USB4 Hub/Dock in between 4.2.1. USB4 Host ↔ UUT (USB4 Hub Under Test) ↔ USB4 Host
1. Connect 2 USB4 Hosts (with a USB4 Hub Under Test in between) as shown in Figure 4-5.
Note: The USB4 Hosts need to run the same operating system
2. Transfer a file from the UUT to the USB4 host.
3. Verify that the file transfer either completes successfully or displays message (e.g. warning that transfer not supported) to tester.
4. Run tests A.1.1 - A.1.6 as specified in Appendix A.
5. Repeat this test for each DFP of the UUT.
USB4 Host 1
USB4 Cable
UUT
USB4 Cable
USB4 Host 2
Figure 4-5: USB4 Host-to-Host Communications with a UUT (USB4 Hub Under Test) in Between
4.2.2. USB4 Host ↔ UUT (USB4 Hub Under Test) ↔ TBT3 Host
1. Connect the USB4 Host to a Thunderbolt 3 Host (with a USB4 Hub in between) as shown in Figure 4-6.
Note: USB4 Host and TBT3 Host need to run the same operating system.
53
2. Transfer a file from the UUT to the TBT3 host.
3. Verify that the file transfer either completes successfully or displays message (e.g. warning that transfer not supported) to tester.
4. Run tests A.1.1 - A.1.6 as specified in Appendix A.
5. Repeat this test for each DFP of the UUT.
USB4 Host 1
USB4 Cable
UUT
Thunderbolt 3 Cable Thunderbolt 3 Host
Figure 4-6: USB4 Host to Thunderbolt 3 Host Communications with a UUT (USB4 Hub Under Test) in Between
54
4.3. Power Measurement
Connect a Power Measurement Fixture between UUT and USB4 host as shown in Figure 4-7.
Power Meter
USB4 Power Measurement UUT Host Fixture
Figure 4-7: UUT (USB4 Hub Under Test) Power Consumption Measurement Topology
For Externally Powered Hubs/Docks:
• Connect a Power Measurement Fixture between UUT and USB4 host as shown in Figure 4-7.
• Capture the power measurements and analyze.
• Unplug the External Power Supply to the device and capture power measurement.
Pass:
• For Externally Powered UUT (with External Power Supply unplugged from the UUT), power consumed by the UUT from the host port is less than or equal to 10 mW
• For Externally Powered UUT (with External Power Supply plugged into the UUT), power consumed by the UUT from the host port should be 0 mW
55
Fail:
• For Externally Powered UUT (with External Power Supply unplugged from the UUT) power consumed by the UUT from the host port is greater than 10 mW
• For Externally Powered UUT (with External Power Supply plugged into the UUT), power consumed by the UUT from the host port is greater than 0 mW
56
4.4. USB4 Hubs Enhanced SuperSpeed Function Backward Compatibility
All USB4 Hubs with Enhanced SuperSpeed Function will need to be backward compatible and compliant to USB3.2 Certification Requirements.
DP Multi-function testing of Hub/Dock ports is required to be tested as part of USB3.2 Certification Requirements.
57
4.5. Billboard Requirement
A USB4 Hub must present a Billboard Device in the following case:
• When the USB4 Hub UFP is not Thunderbolt 3 compatible and it is connected to a Thunderbolt 3 Host.
A Billboard Device informs the end-user and complies with the “No Silent Failure” Rule. The Billboard Device must adhere to the USB 2.0/3.2 Compliance Requirements.
58
4.6. Additional Testing for USB4 Dock
A USB4 Dock combines a USB4 hub (including at least one exposed USB Type-C downstream port) with additional capabilities that either expose other connector types and/or includes other user-visible functions, e.g. storage, networking, etc. An example of functions that are not considered user-visible include firmware update or device authentication.
A USB4 Dock is required to support interoperability with Thunderbolt 3 products on its Upstream Facing Port in addition to all of its Downstream Facing Ports.
Note: For a USB4 Dock, the testing requirements for both USB4 Hub and Device Functions apply. All functions in the USB4 Dock must be completely tested along with devices attached to the USB4 Hub downstream facing ports. Furthermore, the Interoperability tree in Chapter 5 will need to be modified based on the number of exposed downstream facing ports on the USB4 Dock.
4.6.1. TBT3 Host ↔ UUT (USB4 Dock Under Test) ↔ TBT3 Device
Connect a TBT3 device on one of exposed ports of the UUT (USB4 Dock Under Test) as shown in Figure 4-8.
TBT3 Host
USB4 Cable
UUT
TBT3 Cable
TBT3 Device
Figure 4-8: TBT3 Host ↔ UUT (USB4 Dock Under Test) ↔ TBT3 Device Topology
59
4.6.1.1. All Devices Tests – Interoperability Test Steps
• Run tests A.1.1 - A.1.6 as specified in Appendix A.
• Repeat this test for each port on the Hub Under Test.
• Repeat tests with all types of USB4 and TBT3 cables (see Section 1.1).
Pass:
• Tests A.1.1 - A.1.6 in Appendix A PASS
Fail:
• If any of tests A.1.1 - A.1.6 in Appendix A FAIL
60
4.7. USB4 Hub/Dock Functional Testing 4.7.1. USB4 Hub/Dock Multiple Cycle Testing
1. Connect the UUT with USB4 Device to USB4 host using a USB4 Cable as shown in Figure 4-1.
2. Run tests A.1.1, and A.1.3 - A.1.6 (as specified in Appendix A) 10 times i.e. each test must be performed a total of 10 times. For each cycle verify that UUT and USB4 Device enumerate.
4.7.2. NVM Update 4.7.2.1. UUT (USB4 Hub Under Test) Firmware Update
1. Vendor provides utility and procedure for updating firmware
2. Update firmware according to procedure
3. Verify firmware update according to procedure
4.7.3. BIOS Testing
Note: The test in this section are only run if the USB4 hosts supports a pre-OS environment.
4.7.3.1. Inactive Detach/Reattach
1. Power on USB4 Host.
2. Boot to pre-OS environment (e.g. EFI shell).
3. Connect the UUT to a USB4 Host as shown in Figure 4-1.
4. Verify UUT enumeration.
5. Unplug the UUT.
6. Verify UUT removal.
4.7.3.2. Restart
1. Connect the UUT to a USB4 Host as shown in Figure 4-1.
61
2. Power on USB4 Host.
3. Verify UUT enumeration.
4. Restart USB4 Host.
5. Boot to pre-OS environment (e.g. EFI shell).
6. Verify UUT Enumeration.
4.7.3.3. Shutdown/Power On
1. Connect the UUT to a USB4 Host as shown in Figure 4-1.
2. Power on USB4 Host.
3. Boot to pre-OS environment (e.g. EFI shell).
4. Verify UUT enumeration.
4.7.4. Multiple UUT (USB4 Hub Under Test, UFP and DFP) 4.7.4.1. Multiple UUT (USB4 Hubs Under Test, see Figure 4-9)
Note: This test requires a USB4 Host with 2 DFP and 2 instances of the UUT (USB4 Hubs under Test).
1. Connect the first UUT to the USB4 Host.
2. Verify that the first UUT enumerates.
3. Connect a second UUT to the USB4 Host.
4. Verify that the second UUT enumerates.
5. Unplug the second UUT.
6. Verify removal of second UUT.
7. Unplug the first UUT.
8. Verify removal of the first UUT.
9. Repeat so test is performed with all of the following:
62
o UUT1 plugged→UUT2 plugged→UUT1 unplugged→UUT2 unplugged
o UUT1 plugged→UUT2 plugged→UUT2 unplugged→UUT1 unplugged
o UUT2 plugged→UUT1 plugged→UUT1 unplugged→UUT2 unplugged
o UUT2 plugged→UUT1 plugged→UUT2 unplugged→UUT1 unplugged
USB4 Host
USB4 Cables
UUT1 UUT2
Figure 4-9: USB4 Host ↔ UUT (USB4 Hubs Under Test) Topology
4.7.4.2. Multiple USB4 Devices (UUT with 2 or more DFP, See Figure 4-10)
Note: For this test USB4 Device1 and USB4 Device2 need to be identical.
1. Connect the UUT to the USB4 Host.
2. Connect the first USB4 Device to the UUT.
3. Verify that the first USB4 Device enumerates.
4. Connect a second USB4 Device to the UUT.
5. Verify that the second USB4 Device enumerates.
6. Unplug the second USB4 Device.
7. Verify removal of second USB4 Device.
8. Unplug the first USB4 Device.
63
9. Verify removal of the first USB4 Device.
10. Repeat so test is performed with all of the following:
o Device1 plugged→Device2 plugged→ Device 1 unplugged→ Device 2 unplugged
o Device 1 plugged→ Device 2 plugged→ Device 2 unplugged→ Device1 unplugged
o Device2 plugged→ Device 1 plugged→ Device1 unplugged→ Device2 unplugged
o Device 2 plugged→ Device 1 plugged→ Device2 unplugged→ Device1 unplugged
USB4 Host
USB4 Cable
UUT
USB4 Cables
USB4 USB4 Device1 Device2
Figure 4-10: USB4 Host ↔ UUT (USB4 Hub Under Test) ↔ USB4 Devices Topology
64
Appendix A Interoperability Test Steps A.1 USB4 Interop Tree (5 Hops) Topology and Concurrent Operation of all Devices in the Tree
Construct the Interop Tree as outlined in Figure A-1.
Note: A USB4 device can be up to 5 hops away from the USB4 Host along the Interop tree. If you are testing with a USB4 Host System with an embedded Hub then the IO tree must be modified accordingly as to prevent exceeding 5 Hops.
For USB4 Device Under Test (UUT): The UUT (USB4 Device Under Test) should be connected to USB4 Hub #4 (in the USB4 KGD spot as shown in Figure A-1).
For USB4 Host Under Test (UUT): USB4 Host must be replaced with UUT (USB4 Host Under Test) and a USB4 KGD should be connected to USB4 Hub #4 (in the USB4 Device Under Test spot as shown in Figure A-1).
For USB4 Externally Powered Hub Under Test (UUT): USB4 Hub#1 and USB4 Hub#4 must be replaced with UUT’s (USB4 Hubs Under Test) and a USB4 KGD should be connected to UUT #4 (in the USB4 Device Under Test spot as shown in Figure A-1). If a USB4 Hub has more than 3 ports or less than 3 ports the Interop Tree needs to be modified accordingly for testing.
USB4 Device USB4 MSC Device USB4 Host (PCIe with ESS Function Function)
USB4 Cable USB4 Cable
USB4 Cable USB4 Cable USB4 Cable USB4 Cable
USB4 USB4 USB4 USB4 Hub #1 Hub #2 Hub #3 Hub #4 USB3.2 Gen2 Cable (1m) TBT3 Cable
HS Cable HS Cable USB 3.2 Gen2 x1 (5m) (5m) Hub SSP5 TBT3 Device Hub HS-MTT USB4 Cable USB4 Cable
USB3.2 Gen2 UUT (USB4 Device Hub HS5 Cable (1m) Under Test)/USB4 KGD
USB3.2 Gen2 MSC Device Keyboard
Mouse USB4 Device (DP Display)
HS Camera
HS Drive
Figure A-1: USB4 Interop Tree (5 Hops) Topology
65
Tier Device
1 USB4 Hub#1– Externally-powered USB4 Hub attached to the USB4 Host
2 USB4 Hub#2– Externally-powered USB4 Hub attached to the USB4 Hub#1
3 USB4 Hub#3– Externally-powered USB4 Hub attached to the USB4 Hub#2
USB4 MSC Device with ESS function attached to USB4 Hub#3
TBT3 Device attached to USB4 Hub#3
4 USB4 Hub#4– Externally-powered USB4 Hub attached to the USB4 Hub#3
TBT3 Display Monitor attached to USB4 Hub#4
USB4 PCIe Device attached to USB4 Hub#4
UUT (USB4 Device Under Test)/KGD attached to USB4 Hub#4
3 Hub SSP5 - Externally-powered USB 3.2 Gen2 x1 Hub attached to USB4 Hub#2
USB 3.2 Gen2 x1 MSC Device attached to Hub SSP5
3 Hub HS5 - Externally-powered USB 2.0 Hub attached to USB4 Hub#2
HS Drive attached to Hub HS5
HS Video Camera attached to Hub HS5
Hub HS-MTT - Externally-powered high-speed Hub with multiple transaction translators 2 Attached to USB4 Hub#1
Keyboard attached to Hub HS-MTT
Mouse attached to Hub HS-MTT
66
A.2 Interoperability Tree Concurrent Operation
Whenever the Interoperability Test Steps state to operate all of the devices in the Interop Tree, the following is done concurrently:
• Operate the microphone in the Video Camera by speaking into the microphone and view the input sound monitor.
• View streaming video from the HS Video Camera.
• Transfer a 30+ MB file from the USB4 MSC Device to the HS Drive.
• Transfer a 1+ GB file from the USB 3.2 Gen2 MSC to USB4 MSC Device
• Watch video and listen to audio from USB4 DP Monitor.
• Operate the TBT3 Storage Device by transferring 1+ GB file to and from the device
• Operate the USB4 PCIe Device.
• Operate the USB4 Device Under Test (UUT)/KGD.
For Example: If the UUT (USB4 Device Under Test) is a Mass Storage Device, then transfer files across various drives in the tree (HS, USB 3.2 Gen2 MSC Device, UUT, and other storage devices such as Thunderbolt 3, PCIe etcetera). The goal is to ensure Read/Write operation is performed on the UUT in conjunction with operating all other devices on the tree.
• If the UUT (USB4 Device Under Test) is a device other than Mass Storage Device, then ensure the operation on the UUT (USB4 Device Under Test) overlaps over the period of time that other devices in the tree are operating.
• Strike keys on keyboard.
• Move the mouse.
• Verify Device Speed and that all devices on the Interop Tree are operating concurrently.
Note: Verify charging capability along with concurrent operation if supported. For example: If a host (with a battery (power adapter disconnected) is connected to a peripheral capable of charging, then verify the host system is charging along with concurrent operation in Interop.
67
A.3 All Devices Tests – Interoperability Test Steps
(Note: In Interop Testing for Device Enumeration and Removal verification see Appendix C)
A.1.1 Inactive Detach & Reattach
1. Stop all Interoperability Tree device operation. Close any software that is used for any Interoperability Tree device operation.
Note: All combinations of Detach/Reattach must be tested including Flip/Reattach. For example for a Device with Upstream Facing Port (UFP) Receptacle: Test Device Detach/Reattach at the UFP and also repeat the test at the Host Downstream Facing Port (DFP) to which the device is connected.
2. Detach the entire Interoperability Tree.
3. Reattach the entire Interoperability Tree to the same port that it was detached from.
4. For Hub under Test, Detach and Reattach Devices connected to the downstream port as an additional test. This test is in addition to the upstream port inactive detach/reattach combinations.
5. Operate all the devices in the Interoperability Tree. Verify Device Speed and that all devices on the Interop Tree are operating concurrently.
Pass:
• All Interoperability Tree devices operate correctly
Fail: • One or more Interoperability Tree devices fail to operate correctly
A.1.2 Active Detach & Reattach
1. Operate all the devices in the Interop Tree
Note: All combinations of Detach/Reattach must be tested. For example for a Device with Upstream Facing Port (UFP) Receptacle: Test Device Detach/Reattach at the UFP and also repeat the test at the Host Downstream Facing Port (DFP) to which the device is connected.
2. While operating the devices, detach the entire Interoperability Tree.
68
3. Reattach the entire Interoperability Tree to the same port that it was detached from.
4. For Hub under Test, Detach and Reattach Devices connected to the downstream port as an additional test. This test is in addition to the upstream port active detach/reattach combinations.
6. Operate all the devices in the Interoperability Tree. Verify Device Speed and that all devices on the Interop Tree are operating concurrently.
Pass:
• All Interoperability Tree devices operate correctly
Fail:
• One or more Interoperability Tree devices fail to operate correctly or System Locks Up/Freezes
A.1.3 Sleep/Wake
1. Operate all the devices in the Interoperability Tree.
2. While operating the devices, put the system into sleep.
3. Wait 90 seconds then wake the system with the mouse on the Interoperability Tree.
4. Upon resuming verify file transfers resume without error and that no application crashes.
Note: If necessary, it is acceptable to close and reopen the audio/video application after resuming.
5. Operate all devices in the Interoperability Tree. Verify Device Speed and that all devices on the Interop Tree are operating concurrently.
Note: If a Unit Under Test supports Function Wake then verify Wake from the Unit Under Test i.e. Sleep/Wake. Repeat the wake test with all interfaces on the Unit Under Test that support wake. For example: Wake event should be from PCIe/USB device, such as Wake-on-LAN, Wake from USB.
69
Pass:
• System sleeps
AND
• System resumes
AND
• Active operation continues without error
Fail:
• System does not sleep
OR
• System does not resume or wake
OR
• System locks up or freezes
OR
• Any device is not functional or does not continue operation
OR
• Any application freeze or crash
A.1.4 Hibernate/Resume
1. Operate all the devices in the Interoperability Tree.
2. While operating the devices, put the system into hibernation. Wait for 90 seconds and then resume the system.
3. Upon resuming verify file transfers resume without error and that no application crashes.
70
Note: If necessary, it is acceptable to close and reopen the audio/video application after resuming.
4. Operate all devices in the Interoperability Tree. Verify Device Speed and that all devices on the Interop Tree are operating concurrently.
Note: If a Unit Under Test supports Wake then verify Wake from the Unit Under Test i.e. Hibernate/Wake. Repeat the wake test with all interfaces on the Unit Under Test that support wake. Examples of Wake Events: Wake from PCIe/USB device, such as Wake-on-LAN, Wake from USB.
Pass:
• System hibernates
AND
• System resumes
AND
• Active operation initiated in previous step continues without error
Fail:
• System does not hibernate
OR
• System does not resume or wake
OR
• System locks up or freezes
OR
• Any device is not functional or does not continue operation
OR
71
• Any application freeze or crash
A.1.5 Restart
1. If there are file copying processes, let them finish and then close all of them.
2. Restart system.
3. After system reboots operate all the devices in the Interoperability Tree. Verify Device Speed and that all devices on the Interop Tree are operating concurrently.
Pass:
• All Interoperability Tree devices operate correctly
Fail:
• One or more Interoperability Tree devices fail to operate correctly
A.1.6 Shutdown/Power On
1. If there are file copying processes, let them finish and then close all of them.
2. Shutdown the system and turn off the External Power Supply for the USB4 Host.
3. Turn PC and External Power Supply for the USB4 Host back on.
4. After system boots operate all the devices in the Interoperability Tree.
5. Verify Device Speed and that all devices on the Interop Tree are operating concurrently.
Pass:
• All Interoperability Tree devices operate correctly
Fail:
• One or more Interoperability Tree devices fail to operate correctly
72
Appendix B Driver Verifier for Operating Systems
Interoperability testing must be tested with driver verifier enabled in order to help catch problems that may arise during testing.
B.1 List of Drivers for Windows 10
Note: This section is a work in progress and is subject to change.
Flag Setting: Verifier /flags 0x2099B/driver bthusb.sys hidclass.sys hidparse.sys hidusb.sys kbdclass.sys kbdhid.sys mouclass.sys mouhid.sys uaspstor.sys ucx01000.sys
Usb4HostRouter.sys
Usb4DeviceRouter.sys usbaudio.sys usbccgp.sys usbd.sys usbehci.sys usbhub.sys usbhub3.sys
73
usbohci.sys usbport.sys usbprint.sys usbscan.sys usbstor.sys usbuhci.sys usbvideo.sys usbxhci.sys winusb.sys wmbclass.sys
Add DisplayPort Driver’s (dxgkrnl.sys, IHV Display Drivers)
Add PCIe Function Drivers
Any class or device-specific drivers used by a Device Under Test
In general add drivers for devices in the Interop Tree.
An Example List:
Verifier /flags 0x2099B /driver aqnic650.sys stomvme.sys
EhStorClass.sys igdkmd64.sys dxgkrnl.sys
IndirectKmd.sys
WUDFRd.sys
DisplayLinkUsbIo_x64_8.1.848.0.sys
74
dlcdcncm62_x64.sys dlcdcncm6.sys dlusbaudio.sys dlusbaudio_x64.sys bthusb.sys hidclass.sys hidparse.sys hidusb.sys kbdclass.sys kbdhid.sys monitor.sys mouclass.sys mouhid.sys uaspstor.sys ucx01000.sys usbaudio2.sys usbaudio.sys usbccgp.sys usbd.sys usbehci.sys
Usb4HostRouter.sys
Usb4DeviceRouter.sys usbhub.sys usbhub3.sys
75
usbohci.sys usbport.sys usbprint.sys usbscan.sys usbstor.sys usbuhci.sys usbvideo.sys usbxhci.sys winusb.sys wmbclass.sys
B.2 List of Drivers for macOS
TBD
B.3 List of Drivers for Android OS
TBD
B.4 List of Drivers for Chrome OS
TBD
76
Appendix C Device Enumeration/Removal Verification (work in progress)
Display:
Display Enumeration Verification: Verify display turns on with no noticeable visual artifacts. Verify maximum resolution and refresh rate offered on external display can be selected in the OS. Enable audio output to the display. Watch video and listen to audio.
Display Detach
Verify external display is no longer present in the OS.
PCIe Card/Device Enumeration Verification:
Vendors must provide a utility to verify:
Enumeration
Link Width
Link Speed
PCIe Card/Device Removal
Verify PCIe Card is no longer present
USB4 Device Enumeration Verification:
Vendors must provide a utility to verify:
Enumeration
Vendor ID:
77
Product ID:
Link Width
Link Speed
Link Status
USB4 Device Removal
Verify USB4 Device is no longer present
TBT3 Device Enumeration Verification:
Vendors must provide a utility to verify:
Enumeration
Vendor Name
Device Name
Vendor ID
Device ID
Current Link Width
Link Speed
Link Status
TBT3 Device Removal
Verify TBT3 Device is no longer present
78
79
80