]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
5.4-stable patches
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 27 May 2021 09:24:17 +0000 (11:24 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 27 May 2021 09:24:17 +0000 (11:24 +0200)
added patches:
usb-dwc3-gadget-enable-suspend-events.patch

queue-5.4/series
queue-5.4/usb-dwc3-gadget-enable-suspend-events.patch [new file with mode: 0644]

index fe2006fd888ac99deadbae48eb706d75e27e94d1..a90508552b32f1c0cee42d26e9de56fb09e905f2 100644 (file)
@@ -1,3 +1,4 @@
 bpf-wrap-aux-data-inside-bpf_sanitize_info-container.patch
 bpf-fix-mask-direction-swap-upon-off-reg-sign-change.patch
 bpf-no-need-to-simulate-speculative-domain-for-immediates.patch
+usb-dwc3-gadget-enable-suspend-events.patch
diff --git a/queue-5.4/usb-dwc3-gadget-enable-suspend-events.patch b/queue-5.4/usb-dwc3-gadget-enable-suspend-events.patch
new file mode 100644 (file)
index 0000000..d24bfb0
--- /dev/null
@@ -0,0 +1,43 @@
+From d1d90dd27254c44d087ad3f8b5b3e4fff0571f45 Mon Sep 17 00:00:00 2001
+From: Jack Pham <jackp@codeaurora.org>
+Date: Wed, 28 Apr 2021 02:01:10 -0700
+Subject: usb: dwc3: gadget: Enable suspend events
+
+From: Jack Pham <jackp@codeaurora.org>
+
+commit d1d90dd27254c44d087ad3f8b5b3e4fff0571f45 upstream.
+
+commit 72704f876f50 ("dwc3: gadget: Implement the suspend entry event
+handler") introduced (nearly 5 years ago!) an interrupt handler for
+U3/L1-L2 suspend events.  The problem is that these events aren't
+currently enabled in the DEVTEN register so the handler is never
+even invoked.  Fix this simply by enabling the corresponding bit
+in dwc3_gadget_enable_irq() using the same revision check as found
+in the handler.
+
+Fixes: 72704f876f50 ("dwc3: gadget: Implement the suspend entry event handler")
+Acked-by: Felipe Balbi <balbi@kernel.org>
+Signed-off-by: Jack Pham <jackp@codeaurora.org>
+Cc: stable <stable@vger.kernel.org>
+Link: https://lore.kernel.org/r/20210428090111.3370-1-jackp@codeaurora.org
+[jackp@codeaurora.org: backport to pre-5.7 by replacing
+ DWC3_IS_VER_PRIOR check with direct comparison of dwc->revision]
+Signed-off-by: Jack Pham <jackp@codeaurora.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+---
+ drivers/usb/dwc3/gadget.c |    4 ++++
+ 1 file changed, 4 insertions(+)
+
+--- a/drivers/usb/dwc3/gadget.c
++++ b/drivers/usb/dwc3/gadget.c
+@@ -2022,6 +2022,10 @@ static void dwc3_gadget_enable_irq(struc
+       if (dwc->revision < DWC3_REVISION_250A)
+               reg |= DWC3_DEVTEN_ULSTCNGEN;
++      /* On 2.30a and above this bit enables U3/L2-L1 Suspend Events */
++      if (dwc->revision >= DWC3_REVISION_230A)
++              reg |= DWC3_DEVTEN_EOPFEN;
++
+       dwc3_writel(dwc->regs, DWC3_DEVTEN, reg);
+ }