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). ™ is a trademark of 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..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