cancel
Showing results for 
Search instead for 
Did you mean: 

USB compliance testing

jvog.sen
Associate II

Hi, and yet another question...

We would like to perform electrical compliance testing on our USB ports. This requires each port to send a test pattern.

Our board has one upstream and two downstream facing ports. The upstream port can be set into various test modes using a standard tool (USB xHSETT). Unfortunately, this is not possible for the downstream ports.

Can you give me any advice, how to set a usb host port into the TEST_PACKET test mode?

Regards

1 ACCEPTED SOLUTION

Accepted Solutions
Olivier GALLIEN
ST Employee

Hi @jvog.sen​ ,

If I got your question I guess you need to set CONFIG_USB_EHSET_TEST_FIXTURE in your kernel.

This configuration enables the ehset driver which is loaded when plugging PIDVID test fixture or USBHSET https://elixir.bootlin.com/linux/latest/source/drivers/usb/misc/ehset.c

which converts PID into USB message to put the controller in the requested test mode.

#define TEST_SE0_NAK_PID 0x0101

#define TEST_J_PID 0x0102

#define TEST_K_PID 0x0103

#define TEST_PACKET_PID 0x0104

#define TEST_HS_HOST_PORT_SUSPEND_RESUME 0x0106

#define TEST_SINGLE_STEP_GET_DEV_DESC 0x0107

#define TEST_SINGLE_STEP_SET_FEATURE 0x0108

Hope it help

Olivier

Olivier GALLIEN
In order to give better visibility on the answered topics, please click on 'Accept as Solution' on the reply which solved your issue or answered your question.

View solution in original post

2 REPLIES 2
Olivier GALLIEN
ST Employee

Hi @jvog.sen​ ,

If I got your question I guess you need to set CONFIG_USB_EHSET_TEST_FIXTURE in your kernel.

This configuration enables the ehset driver which is loaded when plugging PIDVID test fixture or USBHSET https://elixir.bootlin.com/linux/latest/source/drivers/usb/misc/ehset.c

which converts PID into USB message to put the controller in the requested test mode.

#define TEST_SE0_NAK_PID 0x0101

#define TEST_J_PID 0x0102

#define TEST_K_PID 0x0103

#define TEST_PACKET_PID 0x0104

#define TEST_HS_HOST_PORT_SUSPEND_RESUME 0x0106

#define TEST_SINGLE_STEP_GET_DEV_DESC 0x0107

#define TEST_SINGLE_STEP_SET_FEATURE 0x0108

Hope it help

Olivier

Olivier GALLIEN
In order to give better visibility on the answered topics, please click on 'Accept as Solution' on the reply which solved your issue or answered your question.
jvog.sen
Associate II

Hi Olivier,

thanks, that sounds like it could work - I'll give it a shot!

Regards

Jan