Our FAE provided a solution for this problem. To start the USB 2.0 test pattern generation on the LS1046A via u-boot, you have to enter these commands:
usb start
mw.l 3100420 0
mw.l 3100430 0
mw.l 3100020 0
mw.l 3100424 50000000
mw.l 3100020 1
These are the commands for USB 3.0 controller 3. Change the offset to the following for accessing the other USB ports
USB3.0 controller 1 --> 2F0_0000 - 2FF_FFFF
USB3.0 controller 2 --> 300_0000 - 30F_FFFF
USB3.0 controller 3 --> 310_0000-31F_FFFF
The state of the USB_ID Pin seem to have no effect on the test pattern output
Look at attached file. Find the dwc3_gadget_set_test_mode() procedure in these files. It is part uf u-boot USB driver for the LS1046a USB from LSDK 1712. The same procedure is used in kernel USB driver for setting USB TEST MODES.
Use this procedure for TEST mode setting.
Have a great day,
Pavel Chubakov
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------
I saw that there are these functions in u-boot but had no success. I tried various testmodes on the correct USB port and device. Is there any application note or best practise on this topic you can provide?
Just to make sure, we are talking about the same thing: I'm trying to output the USB test pattern of the USB 2.0 part. The test pattern for USB 3.0 have been output automatically and are working find.
Best regards,
Christian Wächter
I have a new information saying that I have to write to the PORTPMSC register at offset 0x424, because my device is is USB host mode (it's a industrial PC). Register DCTL is for USB device mode.
Unfortunatelly I do not find any information about the PORTPMSC register, e.g. which fields are included and which bits have to be set...
Is there anyone who knows a way to enable the output of the USB test pattern via the DCTL register (Reference Manual, page 2534), that contains the TSTCTL field?
I haven't had any success with the files from the SDK
Look at attached files. These files are used for setting test modes on the LS1043ARDB board. These files are part SDK 2.0 USB driver.
Have a great day,
Pavel Chubakov
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------
Hello Pavel,
thank you for your reply. I will try your suggestion in the next days.
Is there a possibility to write the according values directly into the registers without linux, e.g. while in u-boot? I tried this but haven't had any success.
Best regards,
Christian Wächter