On Tuesday, August 19, 2014 9:56 AM, Peter Chen wrote:
> 
> linux-2.6/drivers/usb/dwc2/gadget.c: In function 's3c_hsotg_irq_enumdone':
> linux-2.6/drivers/usb/dwc2/gadget.c:1904: warning: 'ep_mps' may be used 
> uninitialized in this function
> 
> Acked-by: Paul Zimmerman <[email protected]>
> Signed-off-by: Peter Chen <[email protected]>
> ---
> Changes for v2:
> - Add Paul's suggestion and ack
> 
>  drivers/usb/dwc2/gadget.c |    2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/usb/dwc2/gadget.c b/drivers/usb/dwc2/gadget.c
> index 2421eaa..6bcc644 100644
> --- a/drivers/usb/dwc2/gadget.c
> +++ b/drivers/usb/dwc2/gadget.c
> @@ -1901,7 +1901,7 @@ static void s3c_hsotg_epint(struct s3c_hsotg *hsotg, 
> unsigned int idx,
>  static void s3c_hsotg_irq_enumdone(struct s3c_hsotg *hsotg)
>  {
>       u32 dsts = readl(hsotg->regs + DSTS);
> -     int ep0_mps = 0, ep_mps;
> +     int ep0_mps = 0, ep_mps = 1023;

(+cc  Dinh Nguyen)

static void s3c_hsotg_irq_enumdone(struct s3c_hsotg *hsotg)
{
        u32 dsts = readl(hsotg->regs + DSTS);
        int ep0_mps = 0, ep_mps;

        .....

        case DSTS_ENUMSPD_FS:
        case DSTS_ENUMSPD_FS48:
                ep0_mps = EP0_MPS_LIMIT;
                ep_mps = 1023;
                break;

        case DSTS_ENUMSPD_HS:
                ep0_mps = EP0_MPS_LIMIT;
                ep_mps = 1024;
                break;

        case DSTS_ENUMSPD_LS:
                hsotg->gadget.speed = USB_SPEED_LOW;
                break;

Only low-speed does NOT set 'ep_mps'. Thus, the default value
of 'ep_mps' should be considered for the case of low-speed.
According to the USB2.0 spec, the maximum data payload size
allowed for low-speed devices is 8 bytes. So, this patch should set
the 'ep_mps' as '8' for the low-speed.

What I mean is as follows:

-       int ep0_mps = 0, ep_mps;
+       int ep0_mps = 0, ep_mps = 8;

Best regards,
Jingoo Han

> 
>       /*
>        * This should signal the finish of the enumeration phase
> --
> 1.7.9.5


--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to