According to EHSET_v1.01.pdf description (http://testusb.com/EHHS.html), the USB physical certification test are from 2 sides. One test case is PC running USB-IF HSET utility as being USB host to test the target board being USB device; the other case is target board acting as USB host to initate test signals to a test fixture.
The principle of test modes supported are based on Vid/Pid pair during enumration by host whoever takes.
Apply the attached patch (I use r13.4.1 kernel_imx tree), then enable "FSL_USB_TEST_MODE" in kernel config, rebuild uImage to get the test modes support kernel.
Hi Xia Zhang,
Could you let me know whether the patch has been applied to newer BSP?
(e.g. L3.10.17_1.0.0-ga, kk4.4.2_1.0.0-ga, etc...)
Best Regards,
Satoshi Shimoda
Hi Wilson-san,
Thank you for your reply.
Then, do you know how about Linux BSP?
Especially, I want to know whether it has been applied to L3.10.17_1.0.0-ga (Yocto BSO).
Best Regards,
Satoshi Shimoda
Good morning, Shimoda San,
Linux does not need any patch but there are commands directly changing register content in order to generate USB TEST pattern and they work on L3.0.35_4.1.0:
1 ./memtool -32 0x020c4080 1 (to read current value; for example, 0xc00)
2 ./memtool -32 0x020c4080=(current value + 0x3; for example, 0xc03)
3 ./memtool -32 0x02184140=0x2
4 ./memtool -32 0x021841A8=0x3
5 ./memtool -32 0x02184184=0x1C040000 ( * for some reason, first assignment does not generate test pattern. In this case, redo this command.)
However, in my case running on Yocto, the 5th command changes bit0 and 1 of 0x020C4080 from 1 back to 0. So, we have to run 2nd command to set clock once more; otherwise, any following command could cause system crash. While I have submitted this issue to our internal team for help, you may try these commands on L3.0.35_4.1.0.
Best Regards,
Wilson
Hello, Wilson
I am now working on i.MX6 with L3.0.35_4.1.0 and I want to test the High Speed eye pattern(for certification test) when i.MX6 working on device mode.I don't know whether the following operations are right? Could you help me?
1)./memtool -32 0x020c4080 1
2)./memtool -32 0x202c4080=(current value + 0x3)
3)./memtool -32 0x02184140=0x2
4)./memtool -32 0x021841A8=0x2 (set to Device Controller)
5)./memtool -32 0x02184184=0x1C050000 (According to IMX6SDLRM.pdf, I set PTC field to FORCE_ENABLE_HS to enable High Speed).
Could you tell me if is this right?
Thank you!
Best Regards,
ZongbiaoLiao
Hi,Wilson
Thank you for replying me so quickly.
In my case, i.MX6 is working on USB OTG device mode.
if I run ./memtool -32 0x021841A8=0x3, i.MX6 will be work on host mode.
So I think I need to set 0x021841A8 to 0x2, is it right?
Best Regards,
ZongbiaoLiao
Hi,
How can I set iMx6dl USB into test mode (host) on kernel 4.1.15?
Above register setting dose not work on kernel 4.1.15