From: Surong Pang <surong.pang@xxxxxxxxxx> Let usb phy shutdown later in xhci_plat_remove function. Some phy driver doesn't divide 3.0/2.0 very clear. If calls usb_phy_shutdown earlier than usb_remove_hcd(hcd), It will case 10s cmd timeout issue. Call usb phy shutdown later has better compatibility. Signed-off-by: Surong Pang <surong.pang@xxxxxxxxxx> --- drivers/usb/host/xhci-plat.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/usb/host/xhci-plat.c b/drivers/usb/host/xhci-plat.c index 649ffd861b44..dc73a81cbe9b 100644 --- a/drivers/usb/host/xhci-plat.c +++ b/drivers/usb/host/xhci-plat.c @@ -390,7 +390,6 @@ static int xhci_plat_remove(struct platform_device *dev) usb_remove_hcd(shared_hcd); xhci->shared_hcd = NULL; - usb_phy_shutdown(hcd->usb_phy); usb_remove_hcd(hcd); usb_put_hcd(shared_hcd); @@ -398,6 +397,7 @@ static int xhci_plat_remove(struct platform_device *dev) clk_disable_unprepare(clk); clk_disable_unprepare(reg_clk); usb_put_hcd(hcd); + usb_phy_shutdown(hcd->usb_phy); pm_runtime_disable(&dev->dev); pm_runtime_put_noidle(&dev->dev); -- 2.17.1