summaryrefslogtreecommitdiff
path: root/drivers/usb/musb/musb_dsps.c
diff options
context:
space:
mode:
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>2014-09-19 15:18:00 -0700
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2014-09-19 15:18:00 -0700
commit213db49399c05a98b529fc030b2dfbde4d6a83f2 (patch)
tree7bc660c85b4d608da5ce16d90c10037b24a8df4f /drivers/usb/musb/musb_dsps.c
parentce4df0b01259dc033c3ec8f855a3978818c3315d (diff)
parent72a65a0d19c16de36e970ca6981732b5e8f7f4c4 (diff)
downloadlinux-rt-213db49399c05a98b529fc030b2dfbde4d6a83f2.tar.gz
Merge tag 'usb-for-v3.18' of git://git.kernel.org/pub/scm/linux/kernel/git/balbi/usb into usb-next
Felipe writes: usb: changes for v3.18 merge window Quite big pull request this time. Audio and UVC gadgets can now be used with our configfs-based binding. We have three PHY drivers being removed because a new one has been added using new PHY framework. Gadget framework got a new ->reset callback preparing for some other changes to come on next merge window. A few new drivers came in as well; among those we have a new UDC driver from Xilinx and two new glue layers for DWC3 (ST and Qualcomm). DWC3 also learned about tracepoints which will help debugging quite a bit. Other than that, a big series of non-critical fixes and cleanups. All patches have been on linux-next for quite a bit of time and I boot tested these changes on platforms I have access to and work with mainline. Signed-of-by: Felipe Balbi <balbi@ti.com>
Diffstat (limited to 'drivers/usb/musb/musb_dsps.c')
-rw-r--r--drivers/usb/musb/musb_dsps.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/usb/musb/musb_dsps.c b/drivers/usb/musb/musb_dsps.c
index c791ba5da91a..154bcf1b5dfa 100644
--- a/drivers/usb/musb/musb_dsps.c
+++ b/drivers/usb/musb/musb_dsps.c
@@ -870,6 +870,7 @@ static int dsps_suspend(struct device *dev)
struct musb *musb = platform_get_drvdata(glue->musb);
void __iomem *mbase = musb->ctrl_base;
+ del_timer_sync(&glue->timer);
glue->context.control = dsps_readl(mbase, wrp->control);
glue->context.epintr = dsps_readl(mbase, wrp->epintr_set);
glue->context.coreintr = dsps_readl(mbase, wrp->coreintr_set);
@@ -895,6 +896,7 @@ static int dsps_resume(struct device *dev)
dsps_writel(mbase, wrp->mode, glue->context.mode);
dsps_writel(mbase, wrp->tx_mode, glue->context.tx_mode);
dsps_writel(mbase, wrp->rx_mode, glue->context.rx_mode);
+ setup_timer(&glue->timer, otg_timer, (unsigned long) musb);
return 0;
}