USB眼图

/**********************************************************************
 *                            USB眼图
 * 说明:
 *     对于USB眼图,并不是很清楚这种硬件特性,USB控制器一般本身自带测试
 * 模式,所以只需要修改寄存器来发送对应的测试包就行了。USB Hub可以用usb-tools。
 *
 *                                2018-7-11 深圳 宝安西乡 曾剑锋
 *********************************************************************/

一、参考文档:
    1. USB 眼图测试
        https://community.nxp.com/thread/357113
    2. The solution for the USB test
        https://community.nxp.com/thread/321605
    3. i.MX6Q/eye pattern of USB HS1 setup
        https://community.nxp.com/thread/383925
    4. I.MX6 series USB Certification Guides
        https://community.nxp.com/docs/DOC-105609
    5. 65.6 USB Core Memory Map/Register Definition
6. https://github.com/felipebalbi/usb-tools
7. USB HOST TEST MODE
http://eagerhsu.blogspot.com/2012/07/usb-host-test-mode.html
8. USB High Speed Electrical Test
https://github.com/MicrochipTech/USB-Hub-Linux-Examples/tree/master/General%20USB%20Examples/USB%20High%20Speed%20Electrical%20Test
二、原理说明: The USB controller is compliant with the EHCI specification. The test modes are set by the PTC bits in the PORTSC register (bits 19-16). 三、USB_nPORTSC1 field descriptions

四、测试示例:
    memtool 0x2184184 1               //read the register settings, address of the other USB port is 0x2184384
    memtool 0x2184184=0x18441205      // Force to output Test Packet for Eye Diagram Test  
    memtool 0x2184184=0x18411205      //Force to output J_STATE
    memtool 0x2184184=0x18421205      // Force to output K_STATE
    memtool 0x2184184=0x18431205      // Force to output SE0 (host) / NAK (device)
    memtool 0x2184384=0x18001305      // Force to output Reset
    memtool 0x2184384=0x18001285      //Ho Force to output Suspend
    memtool 0x2184384=0x18001245      // Force to output Resume

五、PORTSCn地址信息:
    | Absolute |
    | address  |                                         | Width     |
    | (hex)    | Register name                           | (in bits) | Access Reset value
    +----------+-----------------------------------------+-----------+-------------------
    | 218_4184 | Port Status & Control (USB_UOG_PORTSC1) |  32       | R/W    1000_0000h
    +----------+-----------------------------------------+-----------+-------------------
    | 218_4384 | Port Status & Control (USB_UH1_PORTSC1) |  32       | R/W    1000_0000h
    +----------+-----------------------------------------+-----------+-------------------
    | 218_4584 | Port Status & Control (USB_UH2_PORTSC1) |  32       | R/W    1000_0000h
    +----------+-----------------------------------------+-----------+-------------------
    | 218_4784 | Port Status & Control (USB_UH3_PORTSC1) |  32       | R/W    1000_0000h

 

posted on 2018-07-11 15:14  zengjf  阅读(2675)  评论(0编辑  收藏  举报

导航