Hi,

On Thu, Mar 12, 2015 at 10:30:21AM +0800, Li Jun wrote:
> From: Li Jun <b47...@freescale.com>
> 
> Peripheral answers OTG status selector request from host according to
> host_request_flag of gadget, length is 1.
> 
> Signed-off-by: Li Jun <jun...@freescale.com>
> ---
>  drivers/usb/chipidea/udc.c |   28 +++++++++++++++++++++++-----
>  1 file changed, 23 insertions(+), 5 deletions(-)
> 
> diff --git a/drivers/usb/chipidea/udc.c b/drivers/usb/chipidea/udc.c
> index 4254792..eed66bc 100644
> --- a/drivers/usb/chipidea/udc.c
> +++ b/drivers/usb/chipidea/udc.c
> @@ -831,7 +831,17 @@ __acquires(hwep->lock)
>               return -ENOMEM;
>  
>       req->complete = isr_get_status_complete;
> -     req->length   = 2;
> +     if (setup->wIndex == OTG_STS_SELECTOR) {
> +             if (ci_otg_is_fsm_mode(ci)) {
> +                     req->length = 1;
> +             } else {
> +                     retval = -ENOTSUPP;
> +                     goto err_free_req;
> +             }
> +     } else {
> +             req->length = 2;
> +     }

this could still be done generically in composite.c

-- 
balbi

Attachment: signature.asc
Description: Digital signature

Reply via email to