日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

linux下usb调试工具,LINUX USB调试

發布時間:2023/12/20 linux 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 linux下usb调试工具,LINUX USB调试 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

LinuxUSB驅動程序調試

:這是LinuxUSB驅動程序調試--003:Ubuntu下的準備工作的詳細頁面,介紹了和linux,有關的知識、技巧、經驗,和一些linux源碼等。

Ubuntu下的準備工作:

(1)如何查看內核中的printk輸出: dmesg

再配合管道命令,?? dmesg |head?? ,??? dmesg |tail

通過這個命令,我們可以看到內中的printk輸出的內容,這是很有用的一個

工具。

(2)的USB抓包工具:usb_mon

其實,Ubuntu下已經內置了USB抓包工具---USB_MON

【其實 make menuconfig 時候會讓我們選擇的】

使用方法如下:

# mount -t debugfs none /sys/kernel/debug

# modprobe usbmon

查看當前的USB device:

# cat? /sys/kernel/debug/usb/devices

下面的輸出:

T:? Bus=01 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 12 Spd=480 MxCh= 0

D:? Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=64 #Cfgs=? 1

P:? Vendor=601a ProdID=4740 Rev= 1.00

S:? Manufacturer=Ingenic

S:? Product=JZ4740 USB Boot Device

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

I:* If#= 0 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=00 Prot=50 Driver=skeleton

E:? Ad=01(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms

E:? Ad=81(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms

如何看懂上面的輸出?? Documentation/usb/usbmon.txt

Bus=01 means it's bus 1.

通過上面的 Vendor=601a ProdID 可以找到我們設備的Bus號。

上面Bus=01。

使用下面的名利,就開始監聽 Bus01上的全部USB數據包。

# cat? /sys/kernel/debug/usb/usbmon/1u

要想開始監聽 全部 Bus 上的全部USB數據包:

# cat? /sys/kernel/debug/usb/usbmon/0u

一旦有數據包,就會打印出來:

# cat /sys/kernel/debug/usb/usbmon/1u

f07dbb80 3233986312 S Co:1:012:0 s 40 01 80c0 0000 0000 0

f07dbb80 3234327703 C Co:1:012:0 0 0

f07dbb80 3234327880 S Co:1:012:0 s 40 02 0000 0200 0000 0

f07dbb80 3234329561 C Co:1:012:0 0 0

f07dbb80 3234329625 S Bi:1:012:1 -115 32 <

f07dbb80 3234331550 C Bi:1:012:1 -75 32 = 00000000 00000000 ?。。。

讀懂上面的數據,還是要看usbmon.txt

URB tag? :標志

TimeStamp:毫秒數

Event Type:? S - submission,

C - callback,

E - submission error.

URBType:BusNo:DeviceAddr:EndPointNum

Ci Co?? Control input and output

Zi Zo?? Isochronous input and output

Ii Io?? Interrupt input and output

Bi Bo?? Bulk input and output

URB Status: 0為沒有錯誤。-XXX是錯誤碼。

總結

以上是生活随笔為你收集整理的linux下usb调试工具,LINUX USB调试的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。