linux usb子系统.调试方法 - Go语言中文社区

linux usb子系统.调试方法


关键词:linux , 驱动, 调试


linux kernel usb调试方法:

  •   sysfs/debugfs
  •   usbmon
  •  Dynamic debug interface
  •  Tracepoints

调试信息文件路径:

ls  /sys/bus/usb/devices/

cat  /sys/kernel/debug/usb/devices   

cat  /proc/bus/input/devices  # 查找系统的usb输入设备

一个u盘的设备信息:
T:  Bus=01 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#=  2 Spd=480  MxCh= 0    
D:  Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=64 #Cfgs=  1              
P:  Vendor=1221 ProdID=3234 Rev= 0.00         
S:  Manufacturer=Udisk
S:  Product=Udisk 2.0
S:  SerialNumber=0001CFCFCFC5DA65
C:* #Ifs= 1 Cfg#= 1 Atr=80 MxPwr=100mA
I:* If#= 0 Alt= 0 #EPs= 2 Cls=08(stor.) Sub=06 Prot=50 Driver=usb-storage
E:  Ad=81(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
E:  Ad=01(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms


工具抓包分析:

usbmon源码路径 Kerneldriversusbmon

usbmon in lowercase refers to a facility inkernel which is used to collect traces of I/O on the USB bus.

usbmon的相关命令行:
$ sudo mount -t debugfs none_debugs /sys/kernel/debug
$ sudo modprobe usbmon
#Verify that bus sockets are present. 我的电脑有3个usb插口。可以看到每个插口有usbmon
$ sudo ls  /sys/kernel/debug/usb/usbmon         
0s  0u	1s  1t	1u  2s	2t  2u

$ls /dev | grep usb
usbmon0  usbmon1  usbmon2
$sudo tcpdump -i usbmon1 -w usbmon11.pcap  #  usb抓包  

抓包U盘插入usb接口过程数据包,Wireshark的分析结果。





 

Protocol  Analyzer软件(USB  tethering和vusb-analyzer)

ubuntu vusb-analyzer安装

$sudoapt-get install vusb-analyzer

 

vusb-analyzer运行

$sudo cat /sys/kernel/debug/usb/usbmon/1u >usbmon12.mon
$vusb-analyzer  usbmon12.mon 

dmesg是用于检测和控制内核环缓冲,它可以用来帮助用户了解系统的信息。

列出日志

# dmesg | less

查看usb相关的信息

# dmesg | grep -i usb

输出最新20行日志

# dmesg | tail -20

清空dmesg缓存日志

# dmesg -c

查看实时日志

# watch "dmesg | tail -20"

 

参考

使用Wireshark捕捉USB通信数据  bobao.360.cn/learning/detail/2738.html

Bootstrap Yourself with Linux-USB Stack



版权声明:本文来源CSDN,感谢博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/cutter2002/article/details/69808345
站方申明:本站部分内容来自社区用户分享,若涉及侵权,请联系站方删除。
  • 发表于 2020-06-27 23:02:46
  • 阅读 ( 1453 )
  • 分类:Linux

0 条评论

请先 登录 后评论

官方社群

GO教程

猜你喜欢