Hi Felipe,
Thinh Nguyen wrote:
This series fixes a couple of driver issues handling ClearFeature(halt) request:
- A function driver often uses set_halt() to reject a class driver protocol
command. After set_halt(), the endpoint will be stalled. It can queue new requests while the endpoint is stalled. However, dwc3 currently drops those requests after CLEAR_STALL. The driver should only drop started requests. Keep the pending requests in the pending list to resume and process them after the host issues ClearFeature(Halt) to the endpoint.
- DWC3 should issue CLEAR_STALL command _after_ END_TRANSFER command completes.
Thinh Nguyen (3): usb: dwc3: gadget: Resume pending requests after CLEAR_STALL usb: dwc3: gadget: END_TRANSFER before CLEAR_STALL command
Since you're picking the fix patches for RC cycle, can you pick up these 2 patches of this series also? We can leave the refactoring patch in this series for v5.10.
Thanks, Thinh
usb: dwc3: gadget: Refactor ep command completion
drivers/usb/dwc3/core.h | 1 + drivers/usb/dwc3/ep0.c | 16 +++++++++ drivers/usb/dwc3/gadget.c | 85 +++++++++++++++++++++++++++++++---------------- drivers/usb/dwc3/gadget.h | 1 + 4 files changed, 75 insertions(+), 28 deletions(-)
base-commit: e3ee0e740c3887d2293e8d54a8707218d70d86ca