Hi, all:
I am working with AM3715 USB EHCI HOST. But a Linux crash occurs.
I found that , TI's BSP add a recovery mechanism,
static void ehci_omap_recover_work(struct work_struct *data)
{
ehci_hcd_cleanup();
ehci_hcd_init();
}
when the recovery mechanism executes, the ehci_hcd_cleanup() crashes at omap_stop_ehc() function.
I found that the hub will deregister the port and the recovery mechanism also deregister the port, is this will cause the crash?
the commit is:
Author: Ajay Kumar Gupta <ajay.gupta@ti.com>
Date: Fri Dec 31 12:54:59 2010 +0530
usb: ehci_omap: add recovery mechanism for omap3 errata
Adding recovery mechanism for OMAP3x errata advisory 3.1.1.198:
"USB Host EHCI May Stall when Running High Peak-bandwidth
Demanding Use Cases"
The recovery mechanism would reinitialize the EHCI controller
whenever the stall scenario occurs.