diff options
Diffstat (limited to 'drivers/usb')
-rwxr-xr-x | drivers/usb/gadget/arcotg_udc.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/drivers/usb/gadget/arcotg_udc.c b/drivers/usb/gadget/arcotg_udc.c index 5a1aab94b405..ea81802a3ca6 100755 --- a/drivers/usb/gadget/arcotg_udc.c +++ b/drivers/usb/gadget/arcotg_udc.c @@ -3458,7 +3458,11 @@ end: dr_clk_gate(false); } - --udc_controller->suspended; + + if (!(--udc_controller->suspended) && !udc_controller->stopped) { + dr_clk_gate(true); + dr_phy_low_power_mode(udc_controller, false); + } enable_irq(udc_controller->irq); mutex_unlock(&udc_resume_mutex); printk(KERN_DEBUG "USB Gadget resume ends\n"); |