This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

AM3354: Disconnect USB during accessing result in Kernel crash

Part Number: AM3354

Tool/software:

Kernel V3.12.10

USB0 connects a USB to UART device, if disconnect the cable after application opened the device, Kernel sometimes crash.

Further experiments figured out if the USB_VBUS is disconnected before DP/DM during unplug can reproduce the failure easily. 

Although the USB_VBUS pin is longer than other pins in connector, but it still can't ensure USB_VBUS is the last pin to be disconnected.

Question: Is it a known issue of the old Kernel? Is there specific fix for this issue In the old Kernel or later new SDK?

  • Hi Tony,

    Further experiments figured out if the USB_VBUS is disconnected before DP/DM during unplug can reproduce the failure easily. 

    Although the USB_VBUS pin is longer than other pins in connector, but it still can't ensure USB_VBUS is the last pin to be disconnected.

    This sounds like a faulty USB cable or receptacle. The USB Specification defines the VBUS pin to be longer than DP/DM pins to ensure DP/DM pins to be the first to disconnect.

    The kernel USB driver was never been tested with VBUS pin disconnected first, I am not sure what its behavior would be in such case.