diff options
author | Armando Visconti <armando.visconti@st.com> | 2012-12-13 15:11:19 +0100 |
---|---|---|
committer | Felipe Balbi <balbi@ti.com> | 2013-01-10 12:39:41 +0200 |
commit | 32c9cf22fccb371745bde98e1da1c3aeb4bb9f36 (patch) | |
tree | ad2fb88fdc5fb2d84c76dc21a0c91451a80ac661 /drivers/usb/gadget/f_sourcesink.c | |
parent | 8f900a9a6e2691441ad763952d640ac44220e5dc (diff) | |
download | op-kernel-dev-32c9cf22fccb371745bde98e1da1c3aeb4bb9f36.zip op-kernel-dev-32c9cf22fccb371745bde98e1da1c3aeb4bb9f36.tar.gz |
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.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 102d49b..de60886 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 */ |