diff options
author | Sevak Arakelyan | 2016-04-28 05:20:53 +0200 |
---|---|---|
committer | Felipe Balbi | 2016-04-28 08:41:26 +0200 |
commit | 907a444718b8f93956acac1c944d880c54ab900d (patch) | |
tree | 77a998cd0c9d4332a8761e01eaf4434f4dd4bb1c /drivers/usb/dwc2/hcd_queue.c | |
parent | usb: dwc2: host: Setting qtd to NULL after freeing it (diff) | |
download | kernel-qcow2-linux-907a444718b8f93956acac1c944d880c54ab900d.tar.gz kernel-qcow2-linux-907a444718b8f93956acac1c944d880c54ab900d.tar.xz kernel-qcow2-linux-907a444718b8f93956acac1c944d880c54ab900d.zip |
usb: dwc2: Fixed SOF interrupt enabling/disabling
In case of DDMA mode we don't need to get an SOF interrupt so disable
the unmasking of SOF interrupt in DDMA mode.
Signed-off-by: Sevak Arakelyan <sevaka@synopsys.com>
Signed-off-by: John Youn <johnyoun@synopsys.com>
Signed-off-by: Felipe Balbi <felipe.balbi@linux.intel.com>
Diffstat (limited to 'drivers/usb/dwc2/hcd_queue.c')
-rw-r--r-- | drivers/usb/dwc2/hcd_queue.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/usb/dwc2/hcd_queue.c b/drivers/usb/dwc2/hcd_queue.c index 7f634fd771c7..b5c7793a2df2 100644 --- a/drivers/usb/dwc2/hcd_queue.c +++ b/drivers/usb/dwc2/hcd_queue.c @@ -1709,7 +1709,8 @@ void dwc2_hcd_qh_unlink(struct dwc2_hsotg *hsotg, struct dwc2_qh *qh) dwc2_deschedule_periodic(hsotg, qh); hsotg->periodic_qh_count--; - if (!hsotg->periodic_qh_count) { + if (!hsotg->periodic_qh_count && + hsotg->core_params->dma_desc_enable <= 0) { intr_mask = dwc2_readl(hsotg->regs + GINTMSK); intr_mask &= ~GINTSTS_SOF; dwc2_writel(intr_mask, hsotg->regs + GINTMSK); |