From 96cbeb7455a3f6b523ba0fa35d7413dafa413b80 Mon Sep 17 00:00:00 2001 From: Greg Kroah-Hartman Date: Thu, 27 May 2021 11:24:17 +0200 Subject: [PATCH] 5.4-stable patches added patches: usb-dwc3-gadget-enable-suspend-events.patch --- queue-5.4/series | 1 + ...sb-dwc3-gadget-enable-suspend-events.patch | 43 +++++++++++++++++++ 2 files changed, 44 insertions(+) create mode 100644 queue-5.4/usb-dwc3-gadget-enable-suspend-events.patch diff --git a/queue-5.4/series b/queue-5.4/series index fe2006fd888..a90508552b3 100644 --- a/queue-5.4/series +++ b/queue-5.4/series @@ -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 index 00000000000..d24bfb0c874 --- /dev/null +++ b/queue-5.4/usb-dwc3-gadget-enable-suspend-events.patch @@ -0,0 +1,43 @@ +From d1d90dd27254c44d087ad3f8b5b3e4fff0571f45 Mon Sep 17 00:00:00 2001 +From: Jack Pham +Date: Wed, 28 Apr 2021 02:01:10 -0700 +Subject: usb: dwc3: gadget: Enable suspend events + +From: Jack Pham + +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 +Signed-off-by: Jack Pham +Cc: stable +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 +Signed-off-by: Greg Kroah-Hartman +--- + 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); + } + -- 2.47.3