lsusb 及 sysfs 的解析

lsusb -t 
/:  Bus 04.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/2p, 5000M
	|__ Port 1: Dev 2, If 0, Class=Mass Storage, Driver=usb-storage, 5000M
    |__ Port 2: Dev 6, If 0, Class=Mass Storage, Driver=usb-storage, 5000M
/:  Bus 03.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/10p, 480M
    |__ Port 7: Dev 19, If 0, Class=Human Interface Device, Driver=usbhid, 1.5M
    |__ Port 8: Dev 8, If 0, Class=Human Interface Device, Driver=usbhid, 12M
    |__ Port 8: Dev 8, If 1, Class=Human Interface Device, Driver=usbhid, 12M
/:  Bus 02.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/2p, 480M
    |__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/6p, 480M
/:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/2p, 480M
    |__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/4p, 480M

usb 2.0的设备插入 Bus03 对应的 port 之后,会落到 Bus 03
usb 2.0的设备插入 Bus04 对应的 port 之后,会落到 Bus 03
usb 3.0的设备插入 Bus04 对应的 port 之后,会落到 Bus 04

虽然这上面显示一个roothub有10个port,可实际上接出来几个,要看电路图设计,可能实际板子上没有port
lsusb -t 
/:  Bus 04.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/2p, 5000M  // 第4个usb控制器实例
	这个是roothub,有2个port,驱动是 xhci_hcd, 速度可以达到 5000M , USB3.0 标称 5Gbps
	|__ Port 1: Dev 2, If 0, Class=Mass Storage, Driver=usb-storage, 5000M
	这个是USB3.0的U盘,插在port1上,类是 Mass Storage , 驱动是 usb-storage , 只有一个接口
    |__ Port 2: Dev 6, If 0, Class=Mass Storage, Driver=usb-storage, 5000M
    这个是另一个USB3.0的U盘,插在port2上
/:  Bus 03.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/10p, 480M // 第3个usb控制器实例
	这个是roothub,有10个port,usb3.0 兼容 usb2.0 ,这个就是USB3.0 IP实例 对应的那个USB2.0实例
	驱动仍是 xhci_hcd , 速度可以达到 480M, USB2.0 标称 480M
    |__ Port 7: Dev 19, If 0, Class=Human Interface Device, Driver=usbhid, 1.5M
    	这个是 该roothub 上的 port 7 的设备,Dev号为19(在这个roothub上每插一次,就增加一次),该设备有1个接口,显示的这行对应的接口为0(有线鼠标)
    	这个设备所属类为 HID,驱动为 usbhid,速率为 1.5M , usb 1.1 low speed
    |__ Port 8: Dev 8, If 0, Class=Human Interface Device, Driver=usbhid, 12M
    	这个是 该roothub 上的 port 8 的设备,Dev号为8(每插一次,就增加一次),接口为0
    	这个设备所属类为 HID,驱动为 usbhid,速率为 12M , usb 2.0 FULL speed,该设备有2个接口,显示的这行对应的接口为0(无线键鼠的鼠标)
    |__ Port 8: Dev 8, If 1, Class=Human Interface Device, Driver=usbhid, 12M
    	这个是 该roothub 上的 port 8 的设备,Dev号为8(每插一次,就增加一次),接口为0
    	这个设备所属类为 HID,驱动为 usbhid,速率为 12M , usb 2.0 FULL speed,该设备有2个接口,显示的这行对应的接口为1(无线键鼠的键盘)
/:  Bus 02.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/2p, 480M 	// 第2个usb控制器实例
	这个是roothub,有2个port,驱动是 ehci-pci, 速度可以达到 480M , USB2.0 标称 480M
    |__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/6p, 480M
    	这个是hub,这个hub有6个port,速度可以达到480M
/:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/2p, 480M  // 第1个usb控制器实例
	这个是roothub,有2个port,驱动是 ehci-pci, 速度可以达到 480M , USB2.0 标称 480M
    |__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/4p, 480M
    	可见,这个roothub 是 第一个 Dev,即号码为1, 接下来的设备可以为 234
/sys/bus/usb/devices$ ls | xargs -n 1
1-0:1.0
1-1
1-1:1.0
2-0:1.0
2-1
2-1:1.0
3-0:1.0
3-7
3-7:1.0
3-8
3-8:1.0
3-8:1.1
4-0:1.0
usb1
usb2
usb3
usb4

X-Y 		// 设备 , roothub X 上的 port Y 上的设备
	X-0  	// 不存在这种表示,可以对应 roothub 设备
			// 注意 : 和  USBX(即USBM)不同 ,第X个USB控制器实例设备
			// 存在 X-0:1.0 , 表示 roothub 中第一个接口(也只有一个接口)
			
	X-1		// port 1 的 设备
	
X-Y:1.Z 	// 接口 , roothub X 上的 port Y 上的设备 上的 第Z个接口
	X-0:1.0 // 表示 roothub X 设备 中第一个接口,一般该设备最多有1个接口
	X-1:1.0 // 表示 port 1 上的设备      中第一个接口,一般该设备    有1个接口或多个接口
	X-1:1.1 // 表示 port 1 上的设备      中第2个接口,一般该设备    有1个接口或多个接口
	
USBM  		// 控制器实例, 第M个USB控制器实例(M从1开始)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值