USB Device Debug SOP

REVISION HISTORY

Revision No.
Description
Date
1.0
  • Initial release
  • 12/3/2024

    USB Device Troubleshooting Process

                                  Troubleshooting Process
    

    Device Driver Configuration and Loading

    Phenomenon Category Problem Description Debug Methods and Ideas
    Device driver configuration Device driver configuration method 1. There are two configuration methods for usb device function, one is through configfs + functionfs, and the other is through linux gadget composite driver

    UVC Issues

    For uvc issues, first determine whether it is an MI pipeline anomaly or a USB transmission problem; if it is a USB transmission problem, use the following methods for troubleshooting. If it is an MI issue, this SOP does not apply.

    Phenomenon Category Problem Description Debug Methods and Ideas
    UVC output anomaly Unable to output image 1. Use prog_uvc -f to inject an image to test if it can output normally
    2. Confirm if there is a problem with the pipeline
    UVC resolution switch anomaly Unable to output image after repeatedly switching resolution 1. Use prog_uvc -f to inject an image to test if it can switch normally
    2. If unresolved, need to use catc to capture packets
    Image corruption flicker Image corruption flicker 1. Use prog_uvc -f to inject an image to see if the same problem occurs, confirm that it is not related to MIU bandwidth in a single scene
    2. Analyze catc packet capture
    3. Capture complete log and catc packet capture, please assist FAE

    RNDIS Issues

    Phenomenon Category Problem Description Debug Methods and Ideas
    RNDIS network card unusable RNDIS yellow exclamation mark appears in Windows Device Manager Need to manually update the driver according to the following method: Device Manager -> Update Driver Software -> Browse my computer for driver software -> Let me pick from a list of available drivers on my computer -> Network adapters -> Vendor select: Microsoft Model select: Remote NDIS Compatible Device
    RNDIS stream panic Log shows skbuff: skb_over_panic 1. Make menuconfig to add: CONFIG_USB_AVOID_SHORT_PACKET_IN_BULK_OUT_WITH_DMA_FOR_ETHERNET
    2. Test with iperf to see if there are issues
    3. If there are still issues, catc packet capture, please RD help analyze

    Blank Chip Upgrade Issues

    Phenomenon Category Problem Description Debug Methods and Ideas
    USB blank chip upgrade failure USB blank chip upgrade failure 1. Check if the device is recognized normally by the PC in the three stages of ROM->IPL->uboot; if IPL is not recognized, update usb_updater.bin, if uboot is not recognized, update uboot.bin
    2. If it is not a recognition issue, then there is a problem with IPL or uboot; capture upgrade logs on both the device side and PC tool side, please RD analyze
    3. Analyze catc packet capture
    USB upgrade fails to boot issue Booting stops at uboot, cannot enter kernel 1. Confirm if the compiled images are normal
    2. Check if the booting uboot distinguishes between dual env or single env, it needs to match the actual image
    3. Capture logs for RD analysis