Messages in this thread Patch in this message | | | From | Armando Visconti <> | Subject | [PATCH V2] usb: gadget zero: avoid unnecessary reinit of data in f_sourcesink | Date | Wed, 19 Dec 2012 12:04:37 +0100 |
| |
In the IN case, since the USB request is allocated only when the source/sink function is started and never freed, the USB ept buffer needs to be initialized only at the beginning. This change results into a more performant g_zero module, especially when 'pattern=1' is selected.
Signed-off-by: Armando Visconti <armando.visconti@st.com> Reviewed-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de> --- This is patch V2, after Sbatian's review. Patch is very simple, but my assumption needs to be cross-verified. This patch has been quickly tested using a DWC3 controller gadget device.
Felipe, if you can quicly take a look at it..
Armando
drivers/usb/gadget/f_sourcesink.c | 3 +-- 1 files changed, 1 insertions(+), 2 deletions(-)
diff --git a/drivers/usb/gadget/f_sourcesink.c b/drivers/usb/gadget/f_sourcesink.c index 3c126fd..534cf8c 100644 --- a/drivers/usb/gadget/f_sourcesink.c +++ b/drivers/usb/gadget/f_sourcesink.c @@ -536,8 +536,7 @@ static void source_sink_complete(struct usb_ep *ep, struct usb_request *req) check_read_data(ss, req); if (pattern != 2) memset(req->buf, 0x55, req->length); - } else - reinit_write_data(ep, req); + } break; /* this endpoint is normally active while we're configured */ -- 1.7.4.4
| |