
Le mardi 14 juillet 2015 à 12:22 +0200, Lukasz Majewski a écrit :
Hi Paul,
This avoids handling requests that have an error status or no data. In particular, this avoids showing unnecessary error messages when the USB gadget gets disconnected (e.g. with fastboot continue) and the fastboot USB gadget driver sends an error back to the host (that has disconnected already).
Signed-off-by: Paul Kocialkowski contact@paulk.fr
drivers/usb/gadget/f_fastboot.c | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-)
diff --git a/drivers/usb/gadget/f_fastboot.c b/drivers/usb/gadget/f_fastboot.c index 206b6d1..b9a9099 100644 --- a/drivers/usb/gadget/f_fastboot.c +++ b/drivers/usb/gadget/f_fastboot.c @@ -635,6 +635,9 @@ static void rx_handler_command(struct usb_ep *ep, struct usb_request *req) void (*func_cb)(struct usb_ep *ep, struct usb_request *req) = NULL; int i;
- if (req->status != 0 || req->length == 0)
return;
- for (i = 0; i < ARRAY_SIZE(cmd_dispatch_info); i++) { if (!strcmp_l1(cmd_dispatch_info[i].cmd, cmdbuf)) { func_cb = cmd_dispatch_info[i].cb;
@@ -656,9 +659,7 @@ static void rx_handler_command(struct usb_ep *ep, struct usb_request *req) } }
- if (req->status == 0) {
*cmdbuf = '\0';
req->actual = 0;
usb_ep_queue(ep, req, 0);
- }
- *cmdbuf = '\0';
- req->actual = 0;
- usb_ep_queue(ep, req, 0);
}
Any more comments to those patches? I mean 1/2 and 2/2.
I could test them on OMAP3 and OMAP5 if you'd like. Together with sunxi (that I developped this on), I think a fair share of platforms using musb-new would be covered. Testing on am33xx and omap4 would be nice, too.