USB 1.0 2.0 3.0 host规范对比
三个版本
USB host 对应 每一个USB版本,有一个实现
分别是
USB1.0 OHCI
USB2.0 EHCI
USB3.0 XHCI
三个版本的目录架构对比
OHCI | EHCI | XHCI |
---|
1介绍 | 1介绍 | 1前言 |
2术语 | | 2介绍 |
3架构 | | 3架构 |
— | — | — |
4数据结构 | 3数据结构 | 6数据结构 |
7寄存器 | 2寄存器 | 5寄存器 |
6 host controller | 4 操作模式 | 4 操作模式 |
— | — | — |
| 5 扩展 | 7 扩展 |
5 host controller dirver | | 8 虚拟化 |
USB host IP 的设计 其实 是有规范的.
请参考
extensible-host-controler-interface-usb-xhci.pdf
这个 文档中定义了 很多概念,介绍了如何依靠这些概念来操作host
XHCI
从功能的角度来排列XHCI概念
主机怎么检测到设备attach
usb host port状态寄存器
TRB
host 怎么向 device 发送数据
Doorbell
command ring
transfer ring
host如何得到device 发送的数据
event ring & interrupt
设备信息放到哪里
Device Context
host 如何得到当前的状态
event ring & interrupt