您的位置:首页 > 其它

sysfs目录下的usb设备信息浅析--ft232

2011-11-26 16:46 561 查看
sysfs是虚拟的文件系统,用于将设备组成层次结构,给用户提供设备的内核信息。

sysfs的功能:

1. 把驱动和设备信息提供给用户空间。

2. 提供接口。

下面分析一下USB的设备信息:

USB的设备驱动信息在/sys/bus/usb/drivers/usb

该目录下的子目录中,用数字开头的目录^[1-9]-[1-9](.[1-9])?,每个目录对应一个usb设备,在这些目录里面可读取到设备的信息,ls /sys/bus/usb/drivers/usb | grep -E '^[1-9]-[1-9](.[1-9])?' 可得到usb设备对应的目录。

#ls /sys/bus/usb/drivers/usb | grep -E '^[1-9]-[1-9](.[1-9])?'

2-1

2-2

进入目录2-1,

# ls
2-1:1.0              bmAttributes        descriptors  manufacturer  subsystem
authorized           bMaxPacketSize0     dev          maxchild      uevent
bcdDevice            bMaxPower           devnum       power         urbnum
bConfigurationValue  bNumConfigurations  driver       product       version
bDeviceClass         bNumInterfaces      ep_00        quirks
bDeviceProtocol      busnum              idProduct    serial
bDeviceSubClass      configuration       idVendor     speed


以ft232转串口芯片为例:

其中,devnum文件的内容是设备编号,对应唯一的usb设备,idProduct 与 idVendor 是usb的厂商信息,内核通过这个找到相应的usb驱动。product 保存的是usb产品信息,平时插入usb的时候左下角冒出的提示就会弹出这个product里面的内容。用户可以修改它,可用于定制信息。2-1:1.0目录下,有个ttyUSB开头的目录,就是设备节点文件名。

# ls 2-1\:1.0/
bAlternateSetting   bInterfaceSubClass  ep_81      subsystem
bInterfaceClass     bNumEndpoints       interface  supports_autosuspend
bInterfaceNumber    driver              modalias   ttyUSB0
bInterfaceProtocol  ep_02               power      uevent


这里是ttyUSB0

可以通过查询/sys/bus/usb/drivers/usb的子目录,获取USB设备信息。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: