进行USB2.0一致性测试的时候,测试Device Hi-Speed Signal Quality Test项测试时候,包括如下四项
1.Eye Result
2.Rising Edge Rate Result
3.Falling Edge Rate Result
4.Edge Monotonicity Result
其中只能测试第四项,其他三项根本不能测试,测试的示波器会报错,我们的设备作为主设备,发出的波形如下,还请帮忙判断一下发出的波形是否正确并帮忙分析一下波形上面是否有问题
ps:附件为我们发出波形
Chris Meng:
Zhao Honle,
1. 请确认你软件有打下面的补丁:
http://arago-project.org/git/projects/?p=linux-omap3.git;a=blobdiff;f=drivers/usb/musb/musb_debugfs.c;h=5954f439b5da16231c87ef95c906f109f362fcbf;hp=f7414a8aeb7e544d339dd3bcb1a6b1b13d6844e8
2. 测试步骤:
/sys/kernel/debug/musb/testmode –> USB0
/sys/kernel/debug/testmode –> USB1
下面以USB0为例:
echo F > /proc/driver/musb_hdrc.0
echo T > /proc/driver/musb_hdrc.0
mount -t debugfs none /sys/kernel/debug
echo "force host" > /sys/kernel/debug/musb/testmode
echo "force full-speed" > /sys/kernel/debug/musb/testmode或者echo "force high-speed" > /sys/kernel/debug/musb/testmode
echo "test packet" > /sys/kernel/debug/musb/testmode
Honle Zhao:
回复 Chris Meng:
你好,软件里面已经增加了你发链接的这个补丁,
根据你给的命令,测试了一下,还是发现有问题,
我们板卡使用的是USB1这个USB,通过你给的指令,发送了一下
echo F > /proc/driver/musb_hdrc.1
echo T > /proc/driver/musb_hdrc.1
敲入这两个命令 波形如第一个图
敲第三条命令mount -t debugfs none /sys/kernel/debug,波形无变化
敲第四条命令echo "force host" > /sys/kernel/debug/testmode 波形变化为高电平,波形如第二张图
敲第五条命令echo "force full-speed" > /sys/kernel/debug/testmode 波形与第四条命令的波形一致,或者输入echo "force high-speed" > /sys/kernel/debug/testmode波形与第四条命令波形一致
敲第六条命令echo "test packet" > /sys/kernel/debug/testmode 波形与第四条命令的波形一致
PS: 之前测试的命令与你给的命令少了两条指令,我们测试用的指令为
echo F > /proc/driver/musb_hdrc.1 echo T > /proc/driver/musb_hdrc.1 mount -t debugfs none /sys/kernel/debug/ echo "test packet" > /sys/kernel/debug/testmode
测试出的波形第三张图,不过此时测试USB一致性的时候示波器会报错,示波器提示让确定d+/d-是否接反,近端远端是否选错,
Chris Meng:
回复 Honle Zhao:
Zhao Honle,
请问你的芯片USB驱动配置的是host模式么?这个接口接个u盘什么的可以正常工作么?
切换模式芯片必须要重启,不知道你上面的流程是在系统上电后就立即测量的么?用test packet测试眼图是没有问题。
https://e2e.ti.com/support/dsp/davinci_digital_media_processors/f/717/p/154545/912736#912736