|
@@ -516,7 +516,6 @@ static int xhci_do_dbc_stop(struct xhci_hcd *xhci)
|
|
|
return -1;
|
|
return -1;
|
|
|
|
|
|
|
|
writel(0, &dbc->regs->control);
|
|
writel(0, &dbc->regs->control);
|
|
|
- xhci_dbc_mem_cleanup(xhci);
|
|
|
|
|
dbc->state = DS_DISABLED;
|
|
dbc->state = DS_DISABLED;
|
|
|
|
|
|
|
|
return 0;
|
|
return 0;
|
|
@@ -562,8 +561,10 @@ static void xhci_dbc_stop(struct xhci_hcd *xhci)
|
|
|
ret = xhci_do_dbc_stop(xhci);
|
|
ret = xhci_do_dbc_stop(xhci);
|
|
|
spin_unlock_irqrestore(&dbc->lock, flags);
|
|
spin_unlock_irqrestore(&dbc->lock, flags);
|
|
|
|
|
|
|
|
- if (!ret)
|
|
|
|
|
|
|
+ if (!ret) {
|
|
|
|
|
+ xhci_dbc_mem_cleanup(xhci);
|
|
|
pm_runtime_put_sync(xhci_to_hcd(xhci)->self.controller);
|
|
pm_runtime_put_sync(xhci_to_hcd(xhci)->self.controller);
|
|
|
|
|
+ }
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
static void
|
|
static void
|