LINUX USB調試

來源:互聯網
上載者:User
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是錯誤碼。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.