sunsnow
驱动牛犊
驱动牛犊
  • 注册日期2003-05-01
  • 最后登录2007-10-29
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:3843回复:7

bus reset问题,求教,附带bushound数据

楼主#
更多 发布于:2003-08-01 12:20
使用bulk only协议的mass storage 开发,当收到read10命令时发送512字节后收到bus reset命令复位,如果只发508个,则不会reset,虽然主机报错data overrun,请教各位有没有遇到这种情况。
主机尚未收到csw信息就已经产生reset。
数据如下:
12  CDB    25 00 00 00 - 00 00 00 00 - 00 00                      READ CAPACITY      98us        31.1.0        
 11  DO     55 53 42 43 - 28 4d 7e 81 - 08 00 00 00 - 80 00 0a 25  USBC(M.........%  1.1ms        32.1.0        
            00 00 00 00 - 00 00 00 00 - 00 00 00 00 - 00 00 00     ...............                32.1.16      
 11  DI     00 00 f7 ff - 00 00 02 00                              ........          1.6sc        33.1.0        
 11  DI     55 53 42 53 - 28 4d 7e 81 - 00 00 00 00 - 00           USBS(M.......     1.4sc        34.1.0        
 12  DI     00 00 f7 ff - 00 00 02 00                              ........           13us        31.2.0        
 12  SSTS   01                                                     ok                  2us        31.3.0        
 12  CDB    28 00 00 00 - 00 00 00 00 - 01 00                      READ10             33us        35.1.0        
 11  DO     55 53 42 43 - 28 4d 7e 81 - 00 02 00 00 - 80 00 0a 28  USBC(M.........(  1.9ms        36.1.0        
            00 00 00 00 - 00 00 00 01 - 00 00 00 00 - 00 00 00     ...............                36.1.16      
 11  DI     00 00 00 00 - 00 00 00 00 - 00 00 00 00 - 00 00 00 00  ................  4.8sc        37.1.0        
            00 00 00 00 - 00 00 00 00 - 00 00 00 00 - 00 00 00 00  ................               37.1.16      
            00 00 00 00 - 00 00 00 00 - 00 00 00 00 - 00 00 00 00  ................               37.1.32      
            00 00 00 00 - 00 00 00 00 - 00 00 00 00 - 00 00 00 00  ................               37.1.48      
            00 00 00 00 - 00 00 00 00 - 00 00 00 00 - 00 00 00 00  ................               37.1.64      
            00 00 00 00 - 00 00 00 00 - 00 00 00 00 - 00 00 00 00  ................               37.1.80      
            00 00 00 00 - 00 00 00 00 - 00 00 00 00 - 00 00 00 00  ................               37.1.96      
            00 00 00 00 - 00 00 00 00 - 00 00 00 00 - 00 00 00 00  ................               37.1.112      
            00 00 00 00 - 00 00 00 00 - 00 00 00 00 - 00 00 00 00  ................               37.1.128      
            00 00 00 00 - 00 00 00 00 - 00 00 00 00 - 00 00 00 00  ................               37.1.144      
            00 00 00 00 - 00 00 00 00 - 00 00 00 00 - 00 00 00 00  ................               37.1.160      
            00 00 00 00 - 00 00 00 00 - 00 00 00 00 - 00 00 00 00  ................               37.1.176      
            00 00 00 00 - 00 00 00 00 - 00 00 00 00 - 00 00 00 00  ................               37.1.192      
            00 00 00 00 - 00 00 00 00 - 00 00 00 00 - 00 00 00 00  ................               37.1.208      
            00 00 00 00 - 00 00 00 00 - 00 00 00 00 - 00 00 00 00  ................               37.1.224      
            00 00 00 00 - 00 00 00 00 - 00 00 00 00 - 00 00 00 00  ................               37.1.240      
            00 00 00 00 - 00 00 00 00 - 00 00 00 00 - 00 00 00 00  ................               37.1.256      
            00 00 00 00 - 00 00 00 00 - 00 00 00 00 - 00 00 00 00  ................               37.1.272      
            00 00 00 00 - 00 00 00 00 - 00 00 00 00 - 00 00 00 00  ................               37.1.288      
            00 00 00 00 - 00 00 00 00 - 00 00 00 00 - 00 00 00 00  ................               37.1.304      
            00 00 00 00 - 00 00 00 00 - 00 00 00 00 - 00 00 00 00  ................               37.1.320      
            00 00 00 00 - 00 00 00 00 - 00 00 00 00 - 00 00 00 00  ................               37.1.336      
            00 00 00 00 - 00 00 00 00 - 00 00 00 00 - 00 00 00 00  ................               37.1.352      
            00 00 00 00 - 00 00 00 00 - 00 00 00 00 - 00 00 00 00  ................               37.1.368      
            00 00 00 00 - 00 00 00 00 - 00 00 00 00 - 00 00 00 00  ................               37.1.384      
            00 00 00 00 - 00 00 00 00 - 00 00 00 00 - 00 00 00 00  ................               37.1.400      
            00 00 00 00 - 00 00 00 00 - 00 00 00 00 - 00 00 00 00  ................               37.1.416      
            00 00 00 00 - 00 00 00 00 - 00 00 00 00 - 00 00 00 02  ................               37.1.432      
            04 00 01 07 - 50 f3 23 00 - 00 00 dd f7 - 00 00 00 00  ....P.#.........               37.1.448      
            00 00 00 00 - 00 00 00 00 - 00 00 00 00 - 00 00 00 00  ................               37.1.464      
            00 00 00 00 - 00 00 00 00 - 00 00 00 00 - 00 00 00 00  ................               37.1.480      
            00 00 00 00 - 00 00 00 00 - 00 00 00 00 - 00 00 55 aa  ..............U.               37.1.496      
 12  DI     00 00 00 00 - 00 00 00 00 - 00 00 00 00 - 00 00 00 00  ................  974us        35.2.0        
            00 00 00 00 - 00 00 00 00 - 00 00 00 00 - 00 00 00 00  ................               35.2.16      
            00 00 00 00 - 00 00 00 00 - 00 00 00 00 - 00 00 00 00  ................               35.2.32      
            00 00 00 00 - 00 00 00 00 - 00 00 00 00 - 00 00 00 00  ................               35.2.48      
            00 00 00 00 - 00 00 00 00 - 00 00 00 00 - 00 00 00 00  ................               35.2.64      
            00 00 00 00 - 00 00 00 00 - 00 00 00 00 - 00 00 00 00  ................               35.2.80      
            00 00 00 00 - 00 00 00 00 - 00 00 00 00 - 00 00 00 00  ................               35.2.96      
            00 00 00 00 - 00 00 00 00 - 00 00 00 00 - 00 00 00 00  ................               35.2.112      
            00 00 00 00 - 00 00 00 00 - 00 00 00 00 - 00 00 00 00  ................               35.2.128      
            00 00 00 00 - 00 00 00 00 - 00 00 00 00 - 00 00 00 00  ................               35.2.144      
            00 00 00 00 - 00 00 00 00 - 00 00 00 00 - 00 00 00 00  ................               35.2.160      
            00 00 00 00 - 00 00 00 00 - 00 00 00 00 - 00 00 00 00  ................               35.2.176      
            00 00 00 00 - 00 00 00 00 - 00 00 00 00 - 00 00 00 00  ................               35.2.192      
            00 00 00 00 - 00 00 00 00 - 00 00 00 00 - 00 00 00 00  ................               35.2.208      
            00 00 00 00 - 00 00 00 00 - 00 00 00 00 - 00 00 00 00  ................               35.2.224      
            00 00 00 00 - 00 00 00 00 - 00 00 00 00 - 00 00 00 00  ................               35.2.240      
            00 00 00 00 - 00 00 00 00 - 00 00 00 00 - 00 00 00 00  ................               35.2.256      
            00 00 00 00 - 00 00 00 00 - 00 00 00 00 - 00 00 00 00  ................               35.2.272      
            00 00 00 00 - 00 00 00 00 - 00 00 00 00 - 00 00 00 00  ................               35.2.288      
            00 00 00 00 - 00 00 00 00 - 00 00 00 00 - 00 00 00 00  ................               35.2.304      
            00 00 00 00 - 00 00 00 00 - 00 00 00 00 - 00 00 00 00  ................               35.2.320      
            00 00 00 00 - 00 00 00 00 - 00 00 00 00 - 00 00 00 00  ................               35.2.336      
            00 00 00 00 - 00 00 00 00 - 00 00 00 00 - 00 00 00 00  ................               35.2.352      
            00 00 00 00 - 00 00 00 00 - 00 00 00 00 - 00 00 00 00  ................               35.2.368      
            00 00 00 00 - 00 00 00 00 - 00 00 00 00 - 00 00 00 00  ................               35.2.384      
            00 00 00 00 - 00 00 00 00 - 00 00 00 00 - 00 00 00 00  ................               35.2.400      
            00 00 00 00 - 00 00 00 00 - 00 00 00 00 - 00 00 00 00  ................               35.2.416      
            00 00 00 00 - 00 00 00 00 - 00 00 00 00 - 00 00 00 02  ................               35.2.432      
            04 00 01 07 - 50 f3 23 00 - 00 00 dd f7 - 00 00 00 00  ....P.#.........               35.2.448      
            00 00 00 00 - 00 00 00 00 - 00 00 00 00 - 00 00 00 00  ................               35.2.464      
            00 00 00 00 - 00 00 00 00 - 00 00 00 00 - 00 00 00 00  ................               35.2.480      
            00 00 00 00 - 00 00 00 00 - 00 00 00 00 - 00 00 55 aa  ..............U.               35.2.496      
 12  SSTS   0e                                                     bus reset           3us        35.3.0        

[编辑 -  8/2/03 by  sunsnow]
flycat0101
驱动小牛
驱动小牛
  • 注册日期2002-06-24
  • 最后登录2018-05-29
  • 粉丝0
  • 关注0
  • 积分20分
  • 威望22点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
  • 社区居民
沙发#
发布于:2003-08-01 14:41
根据我的经验,有可能是你在往host送数据时已经超时了,然后引起reset。也就是在host规定的Read时间内没有完成本次事务。你可以优化你的代码,使其尽可能的执行的快!

我的代码在读的时候没有问题,但是写的时候出现的问题和你的类似,我优化代码解决了这个问题。你不妨参考一下。
 :P :P :P
我思,故我在
sunsnow
驱动牛犊
驱动牛犊
  • 注册日期2003-05-01
  • 最后登录2007-10-29
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2003-08-01 15:54
但是问题是,如果我发送511个数据,则不会有此错误,511和512个时间区别不大,而且目前使用的是dma模式,数据放在了内存区而不是硬盘区,如果这么发送都超时的话,那挂上硬盘就会更慢。
可能不是超时的问题。代码能做的修改也很有限了。


除了超时之外,还会有什么引发主机的reset呢?

谢谢
flycat0101
驱动小牛
驱动小牛
  • 注册日期2002-06-24
  • 最后登录2018-05-29
  • 粉丝0
  • 关注0
  • 积分20分
  • 威望22点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
  • 社区居民
地板#
发布于:2003-08-01 16:52
还有可能是寄存器的状态改变速度不够
在对寄存器进行“写”的操作后延时一段时间

我思,故我在
changjt
驱动牛犊
驱动牛犊
  • 注册日期2002-12-09
  • 最后登录2010-01-27
  • 粉丝0
  • 关注0
  • 积分1分
  • 威望2点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2003-08-01 18:13
可能是出现了usb buffer shutdown
szzwm
驱动牛犊
驱动牛犊
  • 注册日期2003-06-12
  • 最后登录2005-05-06
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2003-08-02 00:20
请注意提供的BusHound数据中的以下部分:  \"1.6sc 33.1.0\"   \"1.4sc 34.1.0\"    \"4.8sc 37.1.0\"。

说明你的固件响应时间过长,达到了秒级,这是不常见的。还是建议你修改一下相关的固件程序,提高响应速度。一般的响应速度是毫秒级或者更快一些。
sunsnow
驱动牛犊
驱动牛犊
  • 注册日期2003-05-01
  • 最后登录2007-10-29
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2003-08-02 11:58
问题解决,谢谢各位
问题是设备在read10数据发送完之后,自动加了一个eop,造成主机读取csw时读了空包所致。
各位提到的响应时间,的确是个问题,但可能是bushound计算时间的起始和中止点不同导致的。因为现在发送8个512字节也不过500多毫秒。

再次谢谢大家
lyzc11
驱动牛犊
驱动牛犊
  • 注册日期2006-09-02
  • 最后登录2016-01-09
  • 粉丝2
  • 关注0
  • 积分17分
  • 威望94点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
7楼#
发布于:2008-10-22 17:25
自动加了个EOP是什么意思,我现在是当发完inquiry命令后,出现bus reset现象,
请问是什么原因啊@@@
游客

返回顶部