diff --git a/drivers/staging/emxx_udc/emxx_udc.c b/drivers/staging/emxx_udc/emxx_udc.c index db39f731bfdc..eab3dffd1e39 100644 --- a/drivers/staging/emxx_udc/emxx_udc.c +++ b/drivers/staging/emxx_udc/emxx_udc.c @@ -557,21 +557,17 @@ static int ep0_out_pio(struct nbu2ss_udc *udc, u8 *pBuf, u32 length) { u32 i; int nret = 0; - u32 iWordLength = 0; + u32 numreads = length / sizeof(u32); union usb_reg_access *pBuf32 = (union usb_reg_access *)pBuf; - /*------------------------------------------------------------*/ - /* Read Length */ - iWordLength = length / sizeof(u32); - /*------------------------------------------------------------*/ /* PIO Read */ - if (iWordLength) { - for (i = 0; i < iWordLength; i++) { + if (numreads) { + for (i = 0; i < numreads; i++) { pBuf32->dw = _nbu2ss_readl(&udc->p_regs->EP0_READ); pBuf32++; } - nret = iWordLength * sizeof(u32); + nret = numreads * sizeof(u32); } return nret;