On 7/15/2020 1:32 PM, Lee Jones wrote: > The value obtained from GINTSTS2 should be masked with the GINTMSK2 > value. Looks like this has been broken since > dwc2_gadget_wkup_alert_handler() was added back in 2018. > > Also fixes the following W=1 warning: > > drivers/usb/dwc2/gadget.c: In function ‘dwc2_gadget_wkup_alert_handler’: > drivers/usb/dwc2/gadget.c:259:6: warning: variable ‘gintmsk2’ set but not used [-Wunused-but-set-variable] > 259 | u32 gintmsk2; > | ^~~~~~~~ > > Cc: Minas Harutyunyan <hminas@xxxxxxxxxxxx> > Cc: Ben Dooks <ben@xxxxxxxxxxxx> > Fixes: 187c5298a1229 ("usb: dwc2: gadget: Add handler for WkupAlert interrupt") > Signed-off-by: Lee Jones <lee.jones@xxxxxxxxxx> Acked-by: Minas Harutyunyan <hminas@xxxxxxxxxxxx> > --- > Changelog: > > v2: Re-written to *use* instad of *remove* gintmsk2 > > drivers/usb/dwc2/gadget.c | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/drivers/usb/dwc2/gadget.c b/drivers/usb/dwc2/gadget.c > index df5fedaca60a0..03cf1fa856219 100644 > --- a/drivers/usb/dwc2/gadget.c > +++ b/drivers/usb/dwc2/gadget.c > @@ -260,6 +260,7 @@ static void dwc2_gadget_wkup_alert_handler(struct dwc2_hsotg *hsotg) > > gintsts2 = dwc2_readl(hsotg, GINTSTS2); > gintmsk2 = dwc2_readl(hsotg, GINTMSK2); > + gintsts2 &= gintmsk2; > > if (gintsts2 & GINTSTS2_WKUP_ALERT_INT) { > dev_dbg(hsotg->dev, "%s: Wkup_Alert_Int\n", __func__); >