summaryrefslogtreecommitdiffstats
path: root/drivers/usb/dwc2
diff options
context:
space:
mode:
authorMian Yousaf Kaukab2015-09-29 12:08:22 +0200
committerFelipe Balbi2015-10-01 19:40:25 +0200
commitb2d4c54e51c4213d215520bab25efee74ddc8d3a (patch)
treeae479761282a3814dcb94637a869b1653622d4bc /drivers/usb/dwc2
parentusb: dwc2: gadget: abort core init if core_reset fails (diff)
downloadkernel-qcow2-linux-b2d4c54e51c4213d215520bab25efee74ddc8d3a.tar.gz
kernel-qcow2-linux-b2d4c54e51c4213d215520bab25efee74ddc8d3a.tar.xz
kernel-qcow2-linux-b2d4c54e51c4213d215520bab25efee74ddc8d3a.zip
usb: dwc2: gadget: ignore stall check for ep0
dwc2_hsotg_start_req starts a request only if endpoint is not stalled. Ignore this check for ep0 as core will clear DOEPCTL0.Stall after sending stall handshake. Prepare instead for receiving next setup packet. Signed-off-by: Mian Yousaf Kaukab <yousaf.kaukab@intel.com> Tested-by: Robert Baldyga <r.baldyga@samsung.com> Tested-by: Dinh Nguyen <dinguyen@opensource.altera.com> Tested-by: John Youn <johnyoun@synopsys.com> Acked-by: John Youn <johnyoun@synopsys.com> Signed-off-by: Felipe Balbi <balbi@ti.com>
Diffstat (limited to 'drivers/usb/dwc2')
-rw-r--r--drivers/usb/dwc2/gadget.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/usb/dwc2/gadget.c b/drivers/usb/dwc2/gadget.c
index af4f0c165d05..885b5b663a69 100644
--- a/drivers/usb/dwc2/gadget.c
+++ b/drivers/usb/dwc2/gadget.c
@@ -556,7 +556,7 @@ static void dwc2_hsotg_start_req(struct dwc2_hsotg *hsotg,
/* If endpoint is stalled, we will restart request later */
ctrl = dwc2_readl(hsotg->regs + epctrl_reg);
- if (ctrl & DXEPCTL_STALL) {
+ if (index && ctrl & DXEPCTL_STALL) {
dev_warn(hsotg->dev, "%s: ep%d is stalled\n", __func__, index);
return;
}