xHCI1.1-USB设备的初始化

USB设备初始化与枚举过程详解
本文详细阐述了USB设备与xHC根集线器端口连接后的初始化流程,包括USB3和USB2协议端口的不同处理方式。设备连接后,xHC会检测并设置端口状态,随后系统软件进行端口重置、设备寻址、配置等一系列操作,确保设备进入默认状态并准备好接收SET_ADDRESS请求。最后,软件读取设备描述符,配置设备并将其交给适当的类驱动程序。

USB设备的初始化

这节描述检测和初始化连接到xHC根集线器端口上的USB设备

无论连接的设备是Function还是集线器,设备的初始化进程都是一样的。一旦与一个外部集线器关联的管道被建立,集线器驱动将会通过标准集线器类命令序列来枚举连接在外部集线器上的设备。这节将重点描述当设备连接到跟集线器上时的初始化进程。

芯片硬件复位,HCRST(Host Controller Reset),或进入PLS(Port Link State) = RxDetect state后,所有根集线器端口均应处于Disconnected state,即Port是处于供电状态(port power,PP="1"),等待设备的连接.

如果USB设备连接到一个Disconnected state的端口:

  • USB3协议端口应该:

        进入轮询状态polling State:

           1.如果轮询成功,Port将会进入可使用状态(Enable state),并且当前连接状态(Current Connect Status,CCS)和连接状态改变(Connect Status Change,CSC)falgs(信号)将会设置为1。

           2.如果轮询失败,Port将会进入无连接状态(Disconnectd state)。

  • USB2协议端口应该:

        进入不可使用状态(Disabled State)并且设置当前连接状态(Current Connect Status,CCS)并且连接状态改变(CSC)信号为‘1’。

下面步骤描述一个典型USB设备初始化

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值