This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Linux/TUSB8041: USB compliance test fail

Part Number: TUSB8041

Tool/software: Linux

The TUSB8041 upstream is an ARM SoC with Linux kernel 4.4.38 and downstream are three USB Super Speed ports. The USB compliance test on the root port of this product are all Pass but fail in TUSB8041 downstream ports.

According to my understanding, USB-IF has USBHSET test program for X86 with Windows OS. This program can set the Hub to several compliance modes. Our product is ARM SoC with Linux OS and we enable the SoC registers to output "Test_Packet". Do you have any idea or suggestion why TUSB8041 can't output the "Test_Packet"?

 

  • Hello Chia Hung Lin,

    The USB host will need to generate the commands described in the USB 2.0 specification that force the hub to send test packets on the downstream ports. To get a compliant USB 2.0 eye, the TUSB8041 will need to generate its own test packets and not just repeat the test packets from the host. The TEST PACKET commands can be generated on Windows platforms using the XHCI HSETT tool, but I am not aware of a similar tool for Linux.

    Regards,
    JMMN
  • Hi JMMN,
    Does TUSB8041 have specific registers that support output TEST PACKET by SMBUS control?
    The commands that USB host generate is by USB I/F not SMBUS, is it right?
  • The test packets are enabled by USB commands, they cannot be forced by SMBUS.

    Regards,

    JMMN