
16 Feb
2015
16 Feb
'15
12:40 p.m.
Hi Kishon,
No functional change. Modified few things so that there are no code duplication while implementing chained TRB.
Signed-off-by: Kishon Vijay Abraham I kishon@ti.com
drivers/usb/dwc3/ep0.c | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-)
diff --git a/drivers/usb/dwc3/ep0.c b/drivers/usb/dwc3/ep0.c index 977d6d4..fce2558 100644 --- a/drivers/usb/dwc3/ep0.c +++ b/drivers/usb/dwc3/ep0.c @@ -761,7 +761,10 @@ static void dwc3_ep0_complete_data(struct dwc3 *dwc, struct usb_request *ur; struct dwc3_trb *trb; struct dwc3_ep *ep0;
- u32 transferred;
- unsigned transfer_size = 0;
- unsigned maxp;
- void *buf;
- u32 transferred = 0; u32 status; u32 length; u8 epnum;
@@ -790,18 +793,19 @@ static void dwc3_ep0_complete_data(struct dwc3 *dwc, }
ur = &r->request;
buf = ur->buf;
length = trb->size & DWC3_TRB_SIZE_MASK;
- if (dwc->ep0_bounced) {
unsigned transfer_size = ur->length;
unsigned maxp = ep0->endpoint.maxpacket;
- maxp = ep0->endpoint.maxpacket;
transfer_size += (maxp - (transfer_size % maxp));
transferred = min_t(u32, ur->length,
transfer_size - length);
- if (dwc->ep0_bounced) {
transfer_size = roundup((ur->length - transfer_size),
maxp);
transferred = min_t(u32, ur->length - transferred,
dwc3_flush_cache((int)dwc->ep0_bounce,transfer_size - length);
DWC3_EP0_BOUNCE_SIZE);
memcpy(ur->buf, dwc->ep0_bounce, transferred);
} else { transferred = ur->length - length; }memcpy(buf, dwc->ep0_bounce, transferred);
Reviewed-by: Lukasz Majewski l.majewski@samsung.com
--
Best regards,
Lukasz Majewski
Samsung R&D Institute Poland (SRPOL) | Linux Platform Group