usb设备在sys子系统中的表示

来源:互联网 发布:剑灵灵族男捏脸数据图 编辑:程序博客网 时间:2024/05/29 04:02

首先,看一下/sys/bus/usb/devices/usb3下的目录结构 

 

说明:usb总线上每个设备都以root hub的编号作为其名字的第一个号码,这个号码后跟着一个“-”字符还有设备所插入的端口号(port)。

(3-0:1.0中3为root hub的编号,3-0表示设备所接入的root hub编号为3,插入到3号root hub的0端口。 “:”后跟usb配置(configuration)的编号,然后是一个“.”和该接口的编号,3-0:1.0表示使用第一个配置,接口编号为0)。

 

接口:usb端点(endpoint)被捆绑为接口(interface),一个接口代表一个基本功能。有的设备具有多个接口,像usb扬声器由音频接口和键盘接口。

(host/roothub)-port : configuration.(interface/endpoint)

(这只是在根hub没有下级hub的情况下才成立,更详细的分析见struct usb_device部分)

 

配置:一个设备可以有一种或几种配置,比如手机都会有多种配置如中文、英文等。

 

Sysfs并没有显示usb设备的所有部分,设备可能包含的可选配置都没有显示。不过可以通过usbfs找到,该文件系统被挂载到/proc/bus/usb下:

# cat devices

T:  Bus=04 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#=  1 Spd=12  MxCh= 1

B:  Alloc=  0/900 us ( 0%), #Int=  0, #Iso=  0

D:  Ver= 1.10 Cls=09(hub  ) Sub=00 Prot=00 MxPS=64 #Cfgs=  1

P:  Vendor=0000 ProdID=0000 Rev= 2.06

S:  Manufacturer=Linux 2.6.23.17_stm23_0119-mb680 ohci_hcd

S:  Product=stm-ohci

S:  SerialNumber=st-usb.1

C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr=  0mA

I:* If#= 0 Alt= 0 #EPs= 1 Cls=09(hub  ) Sub=00 Prot=00 Driver=hub

E:  Ad=81(I) Atr=03(Int.) MxPS=   2 Ivl=255ms

 

T:  Bus=03 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#=  1 Spd=480 MxCh= 1

B:  Alloc=  0/800 us ( 0%), #Int=  1, #Iso=  0

D:  Ver= 2.00 Cls=09(hub  ) Sub=00 Prot=01 MxPS=64 #Cfgs=  1

P:  Vendor=0000 ProdID=0000 Rev= 2.06

S:  Manufacturer=Linux 2.6.23.17_stm23_0119-mb680 ehci_hcd  //usb3,port00: ehci

S:  Product=st-ehci

S:  SerialNumber=st-usb.1

C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr=  0mA

I:* If#= 0 Alt= 0 #EPs= 1 Cls=09(hub  ) Sub=00 Prot=00 Driver=hub

E:  Ad=81(I) Atr=03(Int.) MxPS=   4 Ivl=256ms

 

T:  Bus=03 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#=  2 Spd=480 MxCh= 4

D:  Ver= 2.00 Cls=09(hub  ) Sub=00 Prot=02 MxPS=64 #Cfgs=  1

P:  Vendor=0424 ProdID=2514 Rev= b.b3

C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr=  2mA

I:  If#= 0 Alt= 0 #EPs= 1 Cls=09(hub  ) Sub=00 Prot=01 Driver=hub

E:  Ad=81(I) Atr=03(Int.) MxPS=   1 Ivl=256ms

I:* If#= 0 Alt= 1 #EPs= 1 Cls=09(hub  ) Sub=00 Prot=02 Driver=hub

E:  Ad=81(I) Atr=03(Int.) MxPS=   1 Ivl=256ms

 

T:  Bus=02 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#=  1 Spd=12  MxCh= 1

B:  Alloc=  0/900 us ( 0%), #Int=  0, #Iso=  0

D:  Ver= 1.10 Cls=09(hub  ) Sub=00 Prot=00 MxPS=64 #Cfgs=  1

P:  Vendor=0000 ProdID=0000 Rev= 2.06

S:  Manufacturer=Linux 2.6.23.17_stm23_0119-mb680 ohci_hcd  //usb2:ohci

S:  Product=stm-ohci

S:  SerialNumber=st-usb.0

C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr=  0mA

I:* If#= 0 Alt= 0 #EPs= 1 Cls=09(hub  ) Sub=00 Prot=00 Driver=hub

E:  Ad=81(I) Atr=03(Int.) MxPS=   2 Ivl=255ms

 

T:  Bus=01 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#=  1 Spd=480 MxCh= 1

B:  Alloc=  0/800 us ( 0%), #Int=  0, #Iso=  0

D:  Ver= 2.00 Cls=09(hub  ) Sub=00 Prot=01 MxPS=64 #Cfgs=  1

P:  Vendor=0000 ProdID=0000 Rev= 2.06

S:  Manufacturer=Linux 2.6.23.17_stm23_0119-mb680 ehci_hcd  //usb1:ehci

S:  Product=st-ehci

S:  SerialNumber=st-usb.0

C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr=  0mA

I:* If#= 0 Alt= 0 #EPs= 1 Cls=09(hub  ) Sub=00 Prot=00 Driver=hub

E:  Ad=81(I) Atr=03(Int.) MxPS=   4 Ivl=256ms

#

0 0
原创粉丝点击