91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

RK平臺USB問題排查與性能分析:從入門到實(shí)戰(zhàn)

jf_44130326 ? 來源:Linux1024 ? 2026-02-06 17:10 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

嵌入式開發(fā)中,RK瑞芯微)平臺憑借高性價(jià)比被廣泛用于智能設(shè)備、物聯(lián)網(wǎng)終端等場景,而USB作為設(shè)備與外部交互的核心接口(如連接U盤、網(wǎng)卡、相機(jī)),其穩(wěn)定性和性能直接影響產(chǎn)品體驗(yàn)。實(shí)際調(diào)試中,我們常遇到USB枚舉失敗、傳輸卡頓、速率不達(dá)標(biāo)等問題,今天就從問題排查性能優(yōu)化兩個(gè)維度,分享一套適用于RK平臺的實(shí)戰(zhàn)方法論。

一、USB問題排查:從硬件到軟件的系統(tǒng)化流程

USB問題本質(zhì)是物理層協(xié)議層驅(qū)動(dòng)層的層層傳遞,排查時(shí)需按先硬后軟的順序,避免陷入軟件調(diào)半天,實(shí)則線松了的坑。

1.第一步:先查硬件——排除物理層隱患

很多時(shí)候USB故障根源在硬件,優(yōu)先做以下檢查:

?線纜與接口:更換原廠USB線(尤其是USB3.0 Type-C線,劣質(zhì)線易導(dǎo)致信號衰減),檢查設(shè)備接口是否有氧化、松動(dòng),Host端與Device端接口類型是否匹配(如USB3.0接口插USB2.0設(shè)備需確認(rèn)兼容性)。

?供電穩(wěn)定性:用萬用表USB VBUS電壓(需穩(wěn)定在5V±5%),供電不足會(huì)導(dǎo)致設(shè)備枚舉時(shí)掉電(常見于多設(shè)備同時(shí)掛載場景,如RK3399同時(shí)接USB相機(jī)和U盤)。

?信號質(zhì)量:若為USB2.0高速(480Mbps)或USB3.0超速(5Gbps)設(shè)備,需用示波器USB眼圖(眼高、眼寬需符合USB-IF規(guī)范),信號失真會(huì)導(dǎo)致頻繁丟包重傳,表現(xiàn)為設(shè)備時(shí)斷時(shí)續(xù)

2.第二步:日志分析——抓準(zhǔn)初始化/枚舉關(guān)鍵信息

RK平臺Kernel3.10/4.4版本)會(huì)輸出USB初始化和枚舉的詳細(xì)日志,通過dmesg或串口日志,重點(diǎn)關(guān)注以下關(guān)鍵詞:

1)初始化日志:確認(rèn)USB核心與控制器正常加載

?USB Core加載:出現(xiàn)usbcore: registered new interface driver usbfsUSB文件系統(tǒng)注冊)、usbcore: registered new device driver usb(通用設(shè)備驅(qū)動(dòng)注冊),說明USB核心模塊正常啟動(dòng);若缺失,需檢查Kernel配置中USB support是否開啟。

?控制器驅(qū)動(dòng)加載RK平臺常見USB控制器有EHCIUSB2.0)、OHCIUSB1.1)、DWC2USB2.0 OTG)、DWC3USB3.0),不同控制器日志特征不同:

?EHCI/OHCI:如ehci-platform ff5c0000.usb: new USB bus registered, assigned bus number 3(總線號3,USB2.0)、ohci-platform ff5d0000.usb: irq 49, io mem 0xff5d0000(中斷號49,USB1.1)。

?DWC3USB3.0):會(huì)同時(shí)注冊USB2.0USB3.0總線,如xhci-hcd xhci-hcd.7.auto: new USB bus registered, assigned bus number 4USB2.0)、usb usb5: New USB device found, idVendor=1d6b, idProduct=0003USB3.0idProduct=0003USB3.0標(biāo)識)。

2)枚舉日志:定位設(shè)備連不上的原因

?正常枚舉:會(huì)出現(xiàn)New USB device found, idVendor=xxxx, idProduct=xxxx(設(shè)備ID識別)、usb usbX: Product: XXX(設(shè)備名稱),最后提示hub X-0 X port detectedHUB端口就緒)。

?枚舉失?。褐攸c(diǎn)看錯(cuò)誤信息:

?若出現(xiàn)usb X-Y: device descriptor read/64, error -110(超時(shí)),可能是硬件供電不足或信號差;

?若出現(xiàn)no drivers matched(無匹配驅(qū)動(dòng)),需確認(rèn)設(shè)備類驅(qū)動(dòng)(如U盤的usb-storage、相機(jī)的uvcvideo)是否編譯進(jìn)Kernel。

3.第三步:驅(qū)動(dòng)配置——確認(rèn)軟件開關(guān)沒踩坑

通過Kernelmenuconfig檢查以下配置(不同RK芯片配置路徑一致):

?核心配置:Device Drivers → USB support → USB Core support(必開)。

?控制器驅(qū)動(dòng):根據(jù)芯片型號開啟對應(yīng)控制器,如RK3399需開DWC3 USB Controller,RK3288需開DWC2 USB Controller。

?設(shè)備類驅(qū)動(dòng):按需開啟,如U盤(USB Mass Storage support)、USB相機(jī)(USB Video Class (UVC))、USB網(wǎng)卡(USB Ethernet Adapters)。

?設(shè)備樹配置:確認(rèn)USB控制器節(jié)點(diǎn)未被禁用,如DWC3節(jié)點(diǎn)需設(shè)置dr_mode = "host"Host模式)或"peripheral"Device模式),避免模式配置錯(cuò)誤導(dǎo)致功能異常。

4.第四步:工具驗(yàn)證——用輕量工具快速定位

?lsusb:列出已枚舉的USB設(shè)備,如Bus 004 Device 002: ID 174c:55aa(總線4,設(shè)備2,廠商ID +產(chǎn)品ID),若看不到目標(biāo)設(shè)備,說明枚舉失??;若能看到但無法使用,需查驅(qū)動(dòng)匹配。

?lsusb -t:查看USB設(shè)備拓?fù)?,確認(rèn)設(shè)備掛載的總線速率(如Speed=5000MUSB3.0,Speed=480MUSB2.0),避免“USB3.0設(shè)備跑在USB2.0速率的問題。

?blktrace:針對USB Disk場景,若拷貝卡頓,用blktrace分析IO性能,排查是否存在IO阻塞(需Kernel開啟CONFIG_BLK_DEV_IO_TRACE)。

附:USB問題排查流程圖

wKgZPGkaixCAFzLcAAa4Ce8TngM106.png

二、USB性能分析:從測試到優(yōu)化的實(shí)戰(zhàn)技巧

USB性能常見訴求是傳輸速率達(dá)標(biāo),但實(shí)際速率受硬件、驅(qū)動(dòng)、系統(tǒng)多因素影響,需先測準(zhǔn)優(yōu)化。

1.先搞懂:影響USB性能的核心因素

RK平臺調(diào)試中,我們總結(jié)出4個(gè)關(guān)鍵影響因素:

層面

具體因素

影響表現(xiàn)

硬件

USB版本(2.0/3.0)、信號質(zhì)量

USB3.0理論速率5Gbps,信號差會(huì)掉速到USB2.0

傳輸類型

批量(Disk>同步(Camera>中斷(HID

批量傳輸適合大數(shù)據(jù)(如U盤),同步適合實(shí)時(shí)(如相機(jī))

系統(tǒng)配置

CPU頻率、內(nèi)存緩存、文件系統(tǒng)

CPU低頻會(huì)拖慢數(shù)據(jù)拷貝,NTFSEXT4慢(小文件)

驅(qū)動(dòng)參數(shù)

URB Buffer大小、DMA Burst Length

Buffer小導(dǎo)致中斷頻繁,速率上不去

2.分場景測試:不同USB功能的性能驗(yàn)證方法

1USB Disk:測讀寫速率(避坑指南)

USB Disk是最常見場景,測試需避免緩存干擾,推薦兩種方法:

?方法1dd命令(精準(zhǔn)測控制器性能)

先創(chuàng)建大文件(建議2GB以上,避免緩存影響),再測試:

# 清緩存(必做!避免用內(nèi)存緩存冒充磁盤速度)echo3 > /proc/sys/vm/drop_caches# 測讀速率(從U盤讀入/dev/null,排除目標(biāo)存儲(chǔ)影響)busybox ddif=/mnt/usb/test of=/dev/null bs=512K count=4K conv=fsync# 測寫速率(從/dev/zero寫入U(xiǎn)盤)busybox ddif=/dev/zero of=/mnt/usb/test bs=512K count=4K conv=fsync

?正常范圍:RK USB2.0 Host/25-35MBpsUSB3.0 Host(非UAS60-100MBps,支持UASUSB3.0 Disk可達(dá)350MBps。

?方法2cp命令(測實(shí)際用戶體驗(yàn))

time統(tǒng)計(jì)大文件拷貝時(shí)間,計(jì)算速率:

timecp/mnt/usb/test /sdcard/ # 從U盤拷到EMMC

若速率遠(yuǎn)低于dd測試結(jié)果,需排查目標(biāo)存儲(chǔ)(如EMMC)的寫性能瓶頸。

2USB Ethernet:測帶寬(UDP模式更準(zhǔn))

iperf工具測試USB網(wǎng)卡帶寬(優(yōu)先UDP模式,能測極限帶寬):

?PC端(服務(wù)器)iperf -u -s(開啟UDP服務(wù)器)。

?RK端(客戶端):先配置IP(如ifconfig eth1 192.168.1.2 up),再測試:

# USB2.0網(wǎng)卡:-b設(shè)100M;USB3.0網(wǎng)卡:-b設(shè)1000Miperf-u -c192.168.1.1-b1000M -t60

正常范圍:RK USB2.0 Ethernet 95-100MbpsUSB3.0 Ethernet 750-800Mbps。

3USB Camera:測幀率(實(shí)時(shí)性關(guān)鍵)

?看幀率日志:通過logcat查看相機(jī)預(yù)覽幀率,如CameraHal: debugShowFPS: 30.000 FPS(正常),若幀率低于預(yù)期(如1080P@30fps掉至15fps),需排查同步傳輸性能。

?UVCTrace輔助:開啟UVCTrace查看傳輸細(xì)節(jié):

# 開啟UVCTraceecho0xffff > /sys/module/uvcvideo/parameters/traceecho8 > /proc/sysrq-trigger# 查看統(tǒng)計(jì)信息cat/d/usb/uvcvideo/*/stats

3.針對性優(yōu)化:從驅(qū)動(dòng)到系統(tǒng)的調(diào)優(yōu)方向

1)驅(qū)動(dòng)參數(shù)優(yōu)化

?調(diào)整URB Buffer大小RK DWC2控制器支持最大512KB,DWC3支持16MB-1B,增大Buffer可減少中斷次數(shù)(如MTP驅(qū)動(dòng)將Tx/Rx Buffer設(shè)為1MB,速率提升20%+)。

?優(yōu)化DMA配置:將USB控制器的AHB CLK提至150MHz以上,DMA Burst Length設(shè)為最大(如DWC2設(shè)為16),提升DMA傳輸效率。

?開啟UAS協(xié)議RK3399/RK3328USB3.0控制器支持UASUSB Attached SCSI),開啟后USB3.0 Disk速率可從100MBps提升至350MBps(需KernelCONFIG_USB_UAS,且U盤支持UAS)。

2)系統(tǒng)與文件系統(tǒng)優(yōu)化

?CPU定頻:將RK大核(如RK3399A72)設(shè)為最高頻(1.8GHz),避免CPU變頻導(dǎo)致的數(shù)據(jù)拷貝卡頓。

?文件系統(tǒng)選擇USB Disk優(yōu)先用VFAT/EXT4Kernel block層會(huì)合并小文件為120K),避免NTFS(用戶空間寫入,小文件速率低)。

?緩存配置:調(diào)整dirty_background_ratio(默認(rèn)5%),如4G內(nèi)存設(shè)為10%echo 10 > /proc/sys/vm/dirty_background_ratio),減少頻繁刷盤對速率的影響。

附:USB性能分析腦圖

wKgZPGkaixCAZYtuAAEZ6x6cfLY845.png

三、實(shí)用工具&調(diào)試心得

1.必備工具清單

?硬件工具:萬用表(測供電)、示波器(測眼圖)、原廠USB線。

?軟件工具:dmesg(日志)、lsusb(設(shè)備枚舉)、iperf(帶寬)、blktraceIO分析)、dd(速率測試)。

2.調(diào)試心得

1.先定位瓶頸再優(yōu)化:比如RK3399 USB3 Disk速率慢,先測dd讀速率(80MBps正常),再測EMMC寫速率(25MBps),發(fā)現(xiàn)瓶頸在EMMC,無需改USB驅(qū)動(dòng)。

2.避免緩存欺騙:測試速率時(shí)必須清緩存,大文件建議2GB以上,加conv=fsync確保數(shù)據(jù)寫入磁盤。

3.關(guān)注控制器模式RK平臺USB控制器支持OTG模式,需確認(rèn)dr_mode配置(Host/Device),避免“Host模式接Device設(shè)備的低級錯(cuò)誤。

USB調(diào)試是細(xì)節(jié)決定成敗的過程,掌握硬件排查日志分析性能測試針對性優(yōu)化的流程,能幫我們快速解決90%以上的RK平臺USB問題。大家在調(diào)試中遇到過哪些坑?歡迎在評論區(qū)分享你的解決方案~

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • 嵌入式
    +關(guān)注

    關(guān)注

    5199

    文章

    20454

    瀏覽量

    334265
  • usb
    usb
    +關(guān)注

    關(guān)注

    60

    文章

    8441

    瀏覽量

    284625
  • 瑞芯微
    +關(guān)注

    關(guān)注

    27

    文章

    795

    瀏覽量

    54351
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    Linux Shell腳本入門實(shí)戰(zhàn)詳解

    Linux Shell腳本入門實(shí)戰(zhàn)詳解
    發(fā)表于 02-17 15:03 ?1115次閱讀

    初級小白實(shí)戰(zhàn)資料,零基礎(chǔ)入門rk3399平臺下linux4.4+android8.1開發(fā)

    實(shí)踐經(jīng)驗(yàn)入門放棄,沒有找到正確的方法,所謂萬事開頭難,本次直播就是帶大家快速入門編譯Android源碼,編寫并移植驅(qū)動(dòng),編譯內(nèi)核,編寫
    發(fā)表于 07-27 17:53

    入門精通-西門子工業(yè)網(wǎng)絡(luò)通信實(shí)戰(zhàn)

    入門精通-西門子工業(yè)網(wǎng)絡(luò)通信實(shí)戰(zhàn)教材免費(fèi)下載。
    發(fā)表于 04-21 14:52 ?44次下載

    [RK3588入門精通]系列內(nèi)容專欄目錄及介紹

    [RK3588入門精通] 專欄目錄及介紹
    的頭像 發(fā)表于 04-10 10:40 ?1969次閱讀
    [<b class='flag-5'>RK</b>3588<b class='flag-5'>從</b><b class='flag-5'>入門</b><b class='flag-5'>到</b>精通]系列內(nèi)容專欄目錄及介紹

    迅為RK3568/RK3588開發(fā)板視頻教程 | RKNPU2 入門實(shí)踐一套搞定!

    迅為RK3568/RK3588開發(fā)板視頻教程 | RKNPU2 入門實(shí)踐一套搞定!
    的頭像 發(fā)表于 06-30 15:07 ?2752次閱讀
    迅為<b class='flag-5'>RK</b>3568/<b class='flag-5'>RK</b>3588開發(fā)板視頻教程 | RKNPU2 <b class='flag-5'>從</b><b class='flag-5'>入門</b><b class='flag-5'>到</b>實(shí)踐一套搞定!

    javaweb入門實(shí)戰(zhàn)

    JavaWeb是一門使用Java語言開發(fā)Web應(yīng)用程序的技術(shù),它廣泛應(yīng)用于各種網(wǎng)站和在線應(yīng)用程序的開發(fā)。對于想要學(xué)習(xí)和使用JavaWeb技術(shù)的開發(fā)者來說,入門實(shí)戰(zhàn)這條路并不是很容易
    的頭像 發(fā)表于 12-03 11:44 ?2224次閱讀

    爬蟲數(shù)據(jù)獲取實(shí)戰(zhàn)指南:入門高效采集

    爬蟲數(shù)據(jù)獲取實(shí)戰(zhàn)指南:入門高效采集 ? ? 在數(shù)字化浪潮中,數(shù)據(jù)已成為驅(qū)動(dòng)商業(yè)增長的核心引擎。無論是市場趨勢洞察、競品動(dòng)態(tài)追蹤,還是用戶行為分析
    的頭像 發(fā)表于 03-24 14:08 ?1581次閱讀

    一文搞定RK平臺Wi-Fi/BT調(diào)試!配置問題解決全攻略

    專用芯片,Wi-Fi/BT 的穩(wěn)定運(yùn)行直接影響產(chǎn)品體驗(yàn)。本文配置、編譯、測試問題排查,手把手帶你搞定 RK 平臺 Wi-Fi/BT 調(diào)
    的頭像 發(fā)表于 02-09 16:57 ?1346次閱讀
    一文搞定<b class='flag-5'>RK</b><b class='flag-5'>平臺</b>Wi-Fi/BT調(diào)試!<b class='flag-5'>從</b>配置<b class='flag-5'>到</b>問題解決全攻略

    RK平臺Linux IOMMU開發(fā):原理到實(shí)戰(zhàn)

    顯示(VOP)、編解碼(VPU/HEVC)等場景。今天就從原理、驅(qū)動(dòng)、實(shí)戰(zhàn)、問題排查、Linux 內(nèi)存管理支撐五個(gè)維度,帶大家快速上手 RK 平臺 IOMMU 開發(fā)。
    的頭像 發(fā)表于 02-04 16:24 ?1583次閱讀
    <b class='flag-5'>RK</b><b class='flag-5'>平臺</b>Linux IOMMU開發(fā):<b class='flag-5'>從</b>原理到<b class='flag-5'>實(shí)戰(zhàn)</b>

    RK3588平臺USB攝像頭調(diào)試實(shí)戰(zhàn)報(bào)錯(cuò)到穩(wěn)定運(yùn)行

    在嵌入式開發(fā)中,RK3588 憑借強(qiáng)勁的算力常被用于邊緣計(jì)算、工業(yè)視覺等場景,而 USB 攝像頭作為常見外設(shè),調(diào)試過程中難免遇到各類 “卡殼” 問題。最近我們在 RK3588 上調(diào)試 USB
    的頭像 發(fā)表于 02-04 16:13 ?323次閱讀

    RK3326平臺GC2385攝像頭調(diào)試實(shí)戰(zhàn)報(bào)錯(cuò)到功能正常的完整排查指南

    在嵌入式硬件調(diào)試場景中,攝像頭模塊的適配常涉及驅(qū)動(dòng)、配置文件、硬件參數(shù)的多環(huán)節(jié)協(xié)同,任一環(huán)節(jié)偏差都可能引發(fā)預(yù)覽失敗、拍照異常等問題。本文以RK3326 主控平臺適配GC2385 攝像頭的實(shí)際案例為核心,梳理報(bào)錯(cuò)定位
    的頭像 發(fā)表于 02-03 16:04 ?1174次閱讀
    <b class='flag-5'>RK</b>3326<b class='flag-5'>平臺</b>GC2385攝像頭調(diào)試<b class='flag-5'>實(shí)戰(zhàn)</b>:<b class='flag-5'>從</b>報(bào)錯(cuò)到功能正常的完整<b class='flag-5'>排查</b>指南

    RK平臺網(wǎng)絡(luò)問題排查指南:初始化吞吐量,一文搞定常見故障

    在嵌入式開發(fā)中,RK(瑞芯微)平臺憑借高性能、高兼容性廣泛應(yīng)用于物聯(lián)網(wǎng)、工業(yè)控制等場景,而以太網(wǎng)作為核心通信接口,其穩(wěn)定性直接決定了設(shè)備的可用性。但實(shí)際開發(fā)中,我們常會(huì)遇到初始化失敗、網(wǎng)絡(luò)不通、丟包等問題,
    的頭像 發(fā)表于 02-02 17:22 ?2354次閱讀
    <b class='flag-5'>RK</b><b class='flag-5'>平臺</b>網(wǎng)絡(luò)問題<b class='flag-5'>排查</b>指南:<b class='flag-5'>從</b>初始化<b class='flag-5'>到</b>吞吐量,一文搞定常見故障

    RK?平臺?USB?攝像頭成像調(diào)試指南:信號畫質(zhì)的全流程優(yōu)化

    在?RK(瑞芯微)平臺開發(fā)中,USB?攝像頭成像效果不佳是高頻問題,其根源多與?USB?信號質(zhì)量、PHY?寄存器配置及硬件環(huán)境相關(guān)。本文結(jié)合?Rockchip
    的頭像 發(fā)表于 11-26 07:05 ?823次閱讀
    <b class='flag-5'>RK</b>?<b class='flag-5'>平臺</b>?<b class='flag-5'>USB</b>?攝像頭成像調(diào)試指南:<b class='flag-5'>從</b>信號<b class='flag-5'>到</b>畫質(zhì)的全流程優(yōu)化

    AIROC? CYW20829評估套件:入門實(shí)戰(zhàn)

    AIROC? CYW20829評估套件:入門實(shí)戰(zhàn) 在物聯(lián)網(wǎng)應(yīng)用的蓬勃發(fā)展中,低功耗、高性能的藍(lán)牙低功耗(Bluetooth? Low E
    的頭像 發(fā)表于 12-19 10:30 ?340次閱讀

    RK3506 MIPI轉(zhuǎn)HDMI顯示開發(fā)實(shí)戰(zhàn)硬件驅(qū)動(dòng)全解析

    0 入門 Linux 嵌入式開發(fā)!RK3506 開發(fā)板實(shí)戰(zhàn)教程系列開篇 在嵌入式設(shè)備開發(fā)中,MIPI DSI接口(移動(dòng)行業(yè)處理器接口)廣泛用于連接LCD屏,而HDMI則是高清顯示輸
    的頭像 發(fā)表于 01-06 07:09 ?600次閱讀
    <b class='flag-5'>RK</b>3506 MIPI轉(zhuǎn)HDMI顯示開發(fā)<b class='flag-5'>實(shí)戰(zhàn)</b>:<b class='flag-5'>從</b>硬件<b class='flag-5'>到</b>驅(qū)動(dòng)全解析