xgbing
驱动牛犊
驱动牛犊
  • 注册日期2005-09-02
  • 最后登录2019-04-03
  • 粉丝0
  • 关注0
  • 积分8分
  • 威望68点
  • 贡献值0点
  • 好评度22点
  • 原创分0分
  • 专家分0分
  • 社区居民
阅读:1407回复:3

USB枚举的问题

楼主#
更多 发布于:2007-06-06 10:42
USB设备枚举数据传输的全过程:
1.      主机检测到有设备插上,总线复位;
2.      主机读取设备描述符;
3.      地址分配;
4.      主机从新的地址获取设备描述符;
5.      主机读取配置描述符;
6.      读取描述符集合;
7.      设置配置;
8.      读取配置状态;
9.      读取接口状态。
我监视驱动时发现USB驱动在USB设备接收了几个设备描述符才进入DriverEntry,这之前是usbd.sys在和USB设备通信吗?哪位大哥能讲讲USB设备在插上PC机后usbd.sys是怎么工作的吗?
xgbing
驱动牛犊
驱动牛犊
  • 注册日期2005-09-02
  • 最后登录2019-04-03
  • 粉丝0
  • 关注0
  • 积分8分
  • 威望68点
  • 贡献值0点
  • 好评度22点
  • 原创分0分
  • 专家分0分
  • 社区居民
沙发#
发布于:2007-06-07 09:08
帮帮忙啊
jinghuiren
驱动巨牛
驱动巨牛
  • 注册日期2002-06-01
  • 最后登录2008-10-27
  • 粉丝0
  • 关注0
  • 积分291分
  • 威望460点
  • 贡献值0点
  • 好评度428点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2007-06-07 10:30
你说的没错,前几个描述符是host controller与底层驱动来完成的
当进入getconfig时才会进入你自己的驱动里。
xgbing
驱动牛犊
驱动牛犊
  • 注册日期2005-09-02
  • 最后登录2019-04-03
  • 粉丝0
  • 关注0
  • 积分8分
  • 威望68点
  • 贡献值0点
  • 好评度22点
  • 原创分0分
  • 专家分0分
  • 社区居民
地板#
发布于:2007-06-08 09:42
谢谢jinghuiren

是指第5步才进入自己写的驱动吗?
那为什么DDK中的bulkusb驱动在IRP_MN_START_DEVICE中第一步是先创建得到设备描述符IRP并发到下层驱动了,而不是先创建得到配置描述符IRP?
难道下层驱动这时发上来的设备描述符是下层驱动之前已经获得的?
游客

返回顶部