usb: dwc3: gadget: Execute gadget stop after halting the controller
authorWesley Cheng <quic_wcheng@quicinc.com>
Thu, 20 Apr 2023 21:27:58 +0000 (14:27 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 21 Apr 2023 05:07:44 +0000 (07:07 +0200)
commit39674be56fba1cd3a03bf4617f523a35f85fd2c1
tree8092287e07ccc3305cfbe6b6230f66119a62ea40
parent76e31045ba030e94e72105c01b2e98f543d175ac
usb: dwc3: gadget: Execute gadget stop after halting the controller

Do not call gadget stop until the poll for controller halt is
completed.  DEVTEN is cleared as part of gadget stop, so the intention to
allow ep0 events to continue while waiting for controller halt is not
happening.

Fixes: c96683798e27 ("usb: dwc3: ep0: Don't prepare beyond Setup stage")
Cc: stable@vger.kernel.org
Acked-by: Thinh Nguyen <Thinh.Nguyen@synopsys.com>
Signed-off-by: Wesley Cheng <quic_wcheng@quicinc.com>
Link: https://lore.kernel.org/r/20230420212759.29429-2-quic_wcheng@quicinc.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/usb/dwc3/gadget.c