Browse Source

Revert "usb: dwc3: gadget: skip Set/Clear Halt when invalid"

This reverts commit ffb80fc672c3a7b6afd0cefcb1524fb99917b2f3.

Turns out that commit is wrong. Host controllers are allowed to use
Clear Feature HALT as means to sync data toggle between host and
periperal.

Cc: <stable@vger.kernel.org>
Signed-off-by: Felipe Balbi <felipe.balbi@linux.intel.com>
Felipe Balbi 6 years ago
parent
commit
38317f5c0f
1 changed files with 0 additions and 5 deletions
  1. 0 5
      drivers/usb/dwc3/gadget.c

+ 0 - 5
drivers/usb/dwc3/gadget.c

@@ -1470,9 +1470,6 @@ int __dwc3_gadget_ep_set_halt(struct dwc3_ep *dep, int value, int protocol)
 		unsigned transfer_in_flight;
 		unsigned transfer_in_flight;
 		unsigned started;
 		unsigned started;
 
 
-		if (dep->flags & DWC3_EP_STALL)
-			return 0;
-
 		if (dep->number > 1)
 		if (dep->number > 1)
 			trb = dwc3_ep_prev_trb(dep, dep->trb_enqueue);
 			trb = dwc3_ep_prev_trb(dep, dep->trb_enqueue);
 		else
 		else
@@ -1494,8 +1491,6 @@ int __dwc3_gadget_ep_set_halt(struct dwc3_ep *dep, int value, int protocol)
 		else
 		else
 			dep->flags |= DWC3_EP_STALL;
 			dep->flags |= DWC3_EP_STALL;
 	} else {
 	} else {
-		if (!(dep->flags & DWC3_EP_STALL))
-			return 0;
 
 
 		ret = dwc3_send_clear_stall_ep_cmd(dep);
 		ret = dwc3_send_clear_stall_ep_cmd(dep);
 		if (ret)
 		if (ret)