On Tue, Oct 11, 2022 at 4:41 PM Sascha Hauer <s.hauer@xxxxxxxxxxxxxx> wrote: > > MX6SX_USB_VBUS_WAKEUP_SOURCE are two bits containing an enum value, > so when read/modify/write that we have to clear both bits bits before > setting the desired bits. The clearing of the bits was forgotten, add > it. > > Signed-off-by: Sascha Hauer <s.hauer@xxxxxxxxxxxxxx> Reviewed-by: Xu Yang <xu.yang_2@xxxxxxx> Thanks, Xu Yang > --- > drivers/usb/chipidea/usbmisc_imx.c | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/drivers/usb/chipidea/usbmisc_imx.c b/drivers/usb/chipidea/usbmisc_imx.c > index 8f805aa9c383c..e1b4b7f9b3f31 100644 > --- a/drivers/usb/chipidea/usbmisc_imx.c > +++ b/drivers/usb/chipidea/usbmisc_imx.c > @@ -551,6 +551,7 @@ static int usbmisc_imx6sx_init(struct imx_usbmisc_data *data) > spin_lock_irqsave(&usbmisc->lock, flags); > /* Set vbus wakeup source as bvalid */ > val = readl(reg); > + val &= ~MX6SX_USB_VBUS_WAKEUP_SOURCE(3); > writel(val | MX6SX_USB_VBUS_WAKEUP_SOURCE_BVALID, reg); > /* > * Disable dp/dm wakeup in device mode when vbus is > -- > 2.30.2 >