MX93 USB(2.0) test-mode/output pattern setup in Linux command-line

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

MX93 USB(2.0) test-mode/output pattern setup in Linux command-line

MX93 USB(2.0) test-mode/output pattern setup in Linux command-line

this is tested with MX93(A1) EVK running 6.1.55_2.2.0 pre-build image.

 

USB can output test patterns with either one of the setup below:

1. through device node:

root@imx93evk:/sys/kernel/debug/usb/ci_hdrc.0# cat role
gadget
root@imx93evk:/sys/kernel/debug/usb/ci_hdrc.0# echo host > role
[ 2672.864083] ci_hdrc ci_hdrc.0: EHCI Host Controller
[ 2672.868996] ci_hdrc ci_hdrc.0: new USB bus registered, assigned bus number 1
[ 2672.893320] ci_hdrc ci_hdrc.0: USB 2.0 started, EHCI 1.00
[ 2672.899314] hub 1-0:1.0: USB hub found
[ 2672.909235] hub 1-0:1.0: 1 port detected
root@imx93evk:/sys/kernel/debug/usb/ci_hdrc.0# cat role
host
root@imx93evk:/sys/kernel/debug/usb/ci_hdrc.0# echo 4 > port_test
root@imx93evk:/sys/kernel/debug/usb/ci_hdrc.0# echo 3 > port_test
root@imx93evk:/sys/kernel/debug/usb/ci_hdrc.0# echo 2 > port_test
root@imx93evk:/sys/kernel/debug/usb/ci_hdrc.0# echo 1 > port_test

 

2. use memtool to program registers

for i in $(find /sys -name control | grep usb);do echo on > $i;echo "echo on > $i";done; 
echo host > /sys/kernel/debug/usb/ci_hdrc.0/role

#Offset:184h
USB_OTG1 base address: 4C10_0000h base address
USB_OTG2 base address: 4C20_0000h Register address
Register address:base address+offset
$ /unit_tests/memtool 0x4c100184 1
# Force to output Test Packet for Eye Diagram Test
$ /unit_tests/memtool 0x4c100184=0x18041215
#Force to output J_STATE
$ /unit_tests/memtool 0x4c100184=0x18011215
#Force to output K_STATE
$ /unit_tests/memtool 0x4c100184=0x18021215
#Force to output SE0 (host) / NAK (device)
$ /unit_tests/memtool 0x4c100184=0x18031215
%3CLINGO-SUB%20id%3D%22lingo-sub-1811640%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3EMX93%20USB(2.0)%20test-mode%2Foutput%20pattern%20setup%20in%20Linux%20command-line%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-1811640%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%0A%3CP%3Ethis%20is%20tested%20with%26nbsp%3B%3CSPAN%3EMX93(A1)%20EVK%20running%206.1.55_2.2.0%20pre-build%20image.%3C%2FSPAN%3E%3C%2FP%3E%0A%3CBR%20%2F%3E%0A%3CP%3E%3CSPAN%3EUSB%20can%20output%20test%20patterns%20with%20either%20one%20of%20the%20setup%20below%3A%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%3E%3CSPAN%3E1.%20through%20device%20node%3A%3C%2FSPAN%3E%3C%2FP%3E%0A%3CPRE%20class%3D%22lia-code-sample%20language-markup%22%3E%3CCODE%3Eroot%40imx93evk%3A%2Fsys%2Fkernel%2Fdebug%2Fusb%2Fci_hdrc.0%23%20cat%20role%0Agadget%0Aroot%40imx93evk%3A%2Fsys%2Fkernel%2Fdebug%2Fusb%2Fci_hdrc.0%23%20echo%20host%20%26gt%3B%20role%0A%5B%202672.864083%5D%20ci_hdrc%20ci_hdrc.0%3A%20EHCI%20Host%20Controller%0A%5B%202672.868996%5D%20ci_hdrc%20ci_hdrc.0%3A%20new%20USB%20bus%20registered%2C%20assigned%20bus%20number%201%0A%5B%202672.893320%5D%20ci_hdrc%20ci_hdrc.0%3A%20USB%202.0%20started%2C%20EHCI%201.00%0A%5B%202672.899314%5D%20hub%201-0%3A1.0%3A%20USB%20hub%20found%0A%5B%202672.909235%5D%20hub%201-0%3A1.0%3A%201%20port%20detected%0Aroot%40imx93evk%3A%2Fsys%2Fkernel%2Fdebug%2Fusb%2Fci_hdrc.0%23%20cat%20role%0Ahost%0Aroot%40imx93evk%3A%2Fsys%2Fkernel%2Fdebug%2Fusb%2Fci_hdrc.0%23%20echo%204%20%26gt%3B%20port_test%0Aroot%40imx93evk%3A%2Fsys%2Fkernel%2Fdebug%2Fusb%2Fci_hdrc.0%23%20echo%203%20%26gt%3B%20port_test%0Aroot%40imx93evk%3A%2Fsys%2Fkernel%2Fdebug%2Fusb%2Fci_hdrc.0%23%20echo%202%20%26gt%3B%20port_test%0Aroot%40imx93evk%3A%2Fsys%2Fkernel%2Fdebug%2Fusb%2Fci_hdrc.0%23%20echo%201%20%26gt%3B%20port_test%3C%2FCODE%3E%3C%2FPRE%3E%0A%3CBR%20%2F%3E%0A%3CP%3E%3CSPAN%3E2.%20use%20memtool%20to%20program%20registers%3C%2FSPAN%3E%3C%2FP%3E%0A%3CPRE%20class%3D%22lia-code-sample%20language-markup%22%3E%3CCODE%3Efor%20i%20in%20%24(find%20%2Fsys%20-name%20control%20%7C%20grep%20usb)%3Bdo%20echo%20on%20%26gt%3B%20%24i%3Becho%20%22echo%20on%20%26gt%3B%20%24i%22%3Bdone%3B%20%0Aecho%20host%20%26gt%3B%20%2Fsys%2Fkernel%2Fdebug%2Fusb%2Fci_hdrc.0%2Frole%0A%0A%23Offset%3A184h%0AUSB_OTG1%20base%20address%3A%204C10_0000h%20base%20address%0AUSB_OTG2%20base%20address%3A%204C20_0000h%20Register%20address%0ARegister%20address%EF%BC%9Abase%20address%2Boffset%0A%24%20%2Funit_tests%2Fmemtool%200x4c100184%201%0A%23%20Force%20to%20output%20Test%20Packet%20for%20Eye%20Diagram%20Test%0A%24%20%2Funit_tests%2Fmemtool%200x4c100184%3D0x18041215%0A%23Force%20to%20output%20J_STATE%0A%24%20%2Funit_tests%2Fmemtool%200x4c100184%3D0x18011215%0A%23Force%20to%20output%20K_STATE%0A%24%20%2Funit_tests%2Fmemtool%200x4c100184%3D0x18021215%0A%23Force%20to%20output%20SE0%20(host)%20%2F%20NAK%20(device)%0A%24%20%2Funit_tests%2Fmemtool%200x4c100184%3D0x18031215%3C%2FCODE%3E%3C%2FPRE%3E%3C%2FLINGO-BODY%3E
100% helpful (1/1)
Version history
Last update:
‎02-20-2024 01:31 AM
Updated by: