wdy9927
驱动老牛
驱动老牛
  • 注册日期2003-08-04
  • 最后登录2017-02-04
  • 粉丝0
  • 关注0
  • 积分89分
  • 威望143点
  • 贡献值0点
  • 好评度23点
  • 原创分0分
  • 专家分0分
  • 社区居民
阅读:1222回复:7

主机发送urb后,会做什么其他的事情,才真正完成此次urb?

楼主#
更多 发布于:2004-09-15 11:30
主机传递urb的时候,程序应该有个地方等待urb传递完成。如果传递完成了,主机会做什么事情来结束此次传输呢?

超时呢? 会重传?

在linux 代码中,此函数为wait_for_completion()
 
seegerhelen
驱动牛犊
驱动牛犊
  • 注册日期2004-08-12
  • 最后登录2008-05-05
  • 粉丝0
  • 关注0
  • 积分89分
  • 威望13点
  • 贡献值0点
  • 好评度4点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2004-09-15 13:43
由低层usbd驱动进行传送或重传,完成后才返回


 :) :)
wdy9927
驱动老牛
驱动老牛
  • 注册日期2003-08-04
  • 最后登录2017-02-04
  • 粉丝0
  • 关注0
  • 积分89分
  • 威望143点
  • 贡献值0点
  • 好评度23点
  • 原创分0分
  • 专家分0分
  • 社区居民
板凳#
发布于:2004-09-15 15:21
返回后呢?

我在看linux的代码,总觉得它做了一些事情,比如清除urb,把qh状态恢复 等等这类的事情。

完了,我自己都糊涂了,有人明白么?

 :( :(
wdy9927
驱动老牛
驱动老牛
  • 注册日期2003-08-04
  • 最后登录2017-02-04
  • 粉丝0
  • 关注0
  • 积分89分
  • 威望143点
  • 贡献值0点
  • 好评度23点
  • 原创分0分
  • 专家分0分
  • 社区居民
地板#
发布于:2004-09-15 15:43
应该是 complete 函数

这个函数完成什么内容呢?
xjLegend
驱动小牛
驱动小牛
  • 注册日期2002-11-04
  • 最后登录2005-06-08
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2004-09-16 11:04
应该是 complete 函数

这个函数完成什么内容呢?
 


善后的一些处理工作,可空
我想要点分,这样才有成就感嘛!
wxy0126
驱动牛犊
驱动牛犊
  • 注册日期2002-11-22
  • 最后登录2004-11-01
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2004-09-16 11:26
URB是附带在IRP上进行传输下去的
如果你想在URB完成以后做什么事情的话
就设定完成例程
不想做什么就传下去就行了,结束

个人理解!
 :)
学并快乐着
wdy9927
驱动老牛
驱动老牛
  • 注册日期2003-08-04
  • 最后登录2017-02-04
  • 粉丝0
  • 关注0
  • 积分89分
  • 威望143点
  • 贡献值0点
  • 好评度23点
  • 原创分0分
  • 专家分0分
  • 社区居民
6楼#
发布于:2004-09-16 15:23
对啊,楼上的,就是完成例程里,正常应该做些什么呢?

哈哈,始终不清楚该怎么描述。

qifeng8
驱动小牛
驱动小牛
  • 注册日期2003-08-26
  • 最后登录2013-01-31
  • 粉丝0
  • 关注0
  • 积分9分
  • 威望80点
  • 贡献值0点
  • 好评度21点
  • 原创分0分
  • 专家分0分
7楼#
发布于:2004-09-17 09:22
可能看个例子就能明白,看看ddk的例子程序可能会有收获
游客

返回顶部