summaryrefslogtreecommitdiffstats
path: root/drivers/usb/gadget/f_sourcesink.c
diff options
context:
space:
mode:
authorArmando Visconti <armando.visconti@st.com>2012-12-13 15:11:19 +0100
committerFelipe Balbi <balbi@ti.com>2013-01-10 12:39:41 +0200
commit32c9cf22fccb371745bde98e1da1c3aeb4bb9f36 (patch)
treead2fb88fdc5fb2d84c76dc21a0c91451a80ac661 /drivers/usb/gadget/f_sourcesink.c
parent8f900a9a6e2691441ad763952d640ac44220e5dc (diff)
usb: gadget zero: avoid unnecessary reinit of data in f_sourcesink
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> Signed-off-by: Felipe Balbi <balbi@ti.com>
Diffstat (limited to 'drivers/usb/gadget/f_sourcesink.c')
-rw-r--r--drivers/usb/gadget/f_sourcesink.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/drivers/usb/gadget/f_sourcesink.c b/drivers/usb/gadget/f_sourcesink.c
index 102d49beb9d..de608864c6d 100644
--- a/drivers/usb/gadget/f_sourcesink.c
+++ b/drivers/usb/gadget/f_sourcesink.c
@@ -531,8 +531,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 */