我希望能够识别特定USB设备正在使用的芯片组。我知道lsusb(现在是/ proc / bus / usb / devices),但它们没有提供与lspci一样多的信息。
以下是我如何使用lsusb:
的示例(laptop:/proc/bus/usb) # lsusb -v -d 050d:805c Bus 001 Device 008: ID 050d:805c Belkin Components Device Descriptor: : idVendor 0x050d Belkin Components idProduct 0x805c bcdDevice 0.01 iManufacturer 1 Ralink iProduct 2 802.11 n WLAN :
...和/ proc / bus / usb / devices(感谢对此主题的评论):
T: Bus=01 Lev=02 Prnt=03 Port=02 Cnt=01 Dev#= 8 Spd=480 MxCh= 0 D: Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1 P: Vendor=050d ProdID=805c Rev= 0.01 S: Manufacturer=Ralink S: Product=802.11 n WLAN C:* #Ifs= 1 Cfg#= 1 Atr=80 MxPwr= 4mA
虽然我可以看到我正在寻找合适的USB设备(带有Ralink芯片组的Belkin USB 801.11n),但我还是无法确定确切的芯片组版本。 “0x805c”与我期望的芯片组编号(2500 - 2900)不匹配。
我想也许甚至不可能通过usb总线查询这些信息?
提前感谢您的帮助。
答案 0 :(得分:8)
除非制造商更改每个不同芯片组的ProductID或更新修订版号,否则没有通用的方法来确定芯片组。即使这样,您也需要知道ProductID如何映射到芯片组。
答案 1 :(得分:4)
你试过吗
lsusb -v
当使用详细开关时,lsusb会打印批次信息。
答案 2 :(得分:1)
/ proc / bus / usb / devices比基本选项的lsusb提供更多信息,并且更容易在程序中使用...
答案 3 :(得分:1)
在不打开外壳的情况下,您可以了解最接近产品的是VID(供应商ID)和(产品ID),
但AFAIK,许多供应商使用相同的VID和PID(用于驱动程序兼容性)并更改芯片组。
您可以打开机箱,并希望制造商不要删除部件号。
答案 4 :(得分:1)
尝试
lspci -v
你将获得更多信息
答案 5 :(得分:0)
使用lsusb获取ID并搜索它。
答案 6 :(得分:0)
我猜这取决于具体情况, 与同一家工厂,wifi usb加密狗,我得到
lsusb -v
Bus 001 Device 008: ID 148f:3070 Ralink Technology, Corp. RT2870/RT3070 Wireless Adapter
idVendor 0x148f Ralink Technology, Corp.
idProduct 0x3070 RT2870/RT3070 Wireless Adapter
将3070作为芯片组赠送。
尽管如此,更多搜索会将你在debian wiki中列出的芯片号码作为2870,
USB: 050D:805C Belkin Components F5D8053 N Wireless Adapter v3000 [Ralink RT2870]
答案 7 :(得分:0)
您也可以使用dmesg
进行检查。
我有一个USB BLE加密狗,并将其连接到我的PC会产生以下情况:
[31254.130216] usb 1-4: USB disconnect, device number 5
[31305.979397] usb 1-4: new full-speed USB device number 6 using xhci_hcd
[31306.338254] usb 1-4: New USB device found, idVendor=0a12, idProduct=0001
[31306.338259] usb 1-4: New USB device strings: Mfr=0, Product=2, SerialNumber=0
[31306.338263] usb 1-4: Product: CSR8510 A10
我从中得到了“ CSR8510 A10”(这使我进入了Qualcomm CSR8510芯片组)。