Sebastian Andrzej Siewior <bige...@linutronix.de> writes:
> This patch moves USB_BUFSIZ into global header file as
> USB_COMP_EP0_BUFSIZ. There is currently only one user (f_sourcesink)
> besides composite which needs it. Ideally f_sourcesink would have its
> own ep0 buffer. Lets keep it that way it was for now.
>
> Signed-off-by: Sebastian Andrzej Siewior <bige...@linutronix.de>

Acked-by: Michal Nazarewicz <min...@mina86.com>

> ---
>  drivers/usb/gadget/composite.c    |   10 ++++------
>  drivers/usb/gadget/f_sourcesink.c |    2 +-
>  include/linux/usb/composite.h     |    3 +++
>  3 files changed, 8 insertions(+), 7 deletions(-)
>
> diff --git a/drivers/usb/gadget/composite.c b/drivers/usb/gadget/composite.c
> index 598df69..e380a05 100644
> --- a/drivers/usb/gadget/composite.c
> +++ b/drivers/usb/gadget/composite.c
> @@ -28,9 +28,6 @@
>   * with the relevant device-wide data.
>   */
>  
> -/* big enough to hold our biggest descriptor */
> -#define USB_BUFSIZ   1024
> -
>  /* Some systems will need runtime overrides for the  product identifiers
>   * published in the device descriptor, either numbers or strings or both.
>   * String parameters are in UTF-8 (superset of ASCII's 7 bit characters).
> @@ -355,10 +352,11 @@ static int config_buf(struct usb_configuration *config,
>  {
>       struct usb_config_descriptor    *c = buf;
>       void                            *next = buf + USB_DT_CONFIG_SIZE;
> -     int                             len = USB_BUFSIZ - USB_DT_CONFIG_SIZE;
> +     int                             len;
>       struct usb_function             *f;
>       int                             status;
>  
> +     len = USB_COMP_EP0_BUFSIZ - USB_DT_CONFIG_SIZE;
>       /* write the config descriptor */
>       c = buf;
>       c->bLength = USB_DT_CONFIG_SIZE;
> @@ -1445,13 +1443,13 @@ static int composite_bind(struct usb_gadget *gadget,
>       cdev->req = usb_ep_alloc_request(gadget->ep0, GFP_KERNEL);
>       if (!cdev->req)
>               goto fail;
> -     cdev->req->buf = kmalloc(USB_BUFSIZ, GFP_KERNEL);
> +     cdev->req->buf = kmalloc(USB_COMP_EP0_BUFSIZ, GFP_KERNEL);
>       if (!cdev->req->buf)
>               goto fail;
>       cdev->req->complete = composite_setup_complete;
>       gadget->ep0->driver_data = cdev;
>  
> -     cdev->bufsiz = USB_BUFSIZ;
> +     cdev->bufsiz = USB_COMP_EP0_BUFSIZ;
>       cdev->driver = cdriver;
>  
>       /*
> diff --git a/drivers/usb/gadget/f_sourcesink.c 
> b/drivers/usb/gadget/f_sourcesink.c
> index 5c1b68b..3c126fd 100644
> --- a/drivers/usb/gadget/f_sourcesink.c
> +++ b/drivers/usb/gadget/f_sourcesink.c
> @@ -795,7 +795,7 @@ static int sourcesink_setup(struct usb_configuration *c,
>       u16                     w_value = le16_to_cpu(ctrl->wValue);
>       u16                     w_length = le16_to_cpu(ctrl->wLength);
>  
> -     req->length = USB_BUFSIZ;
> +     req->length = USB_COMP_EP0_BUFSIZ;
>  
>       /* composite driver infrastructure handles everything except
>        * the two control test requests.
> diff --git a/include/linux/usb/composite.h b/include/linux/usb/composite.h
> index 43d6b9c..89d91b6 100644
> --- a/include/linux/usb/composite.h
> +++ b/include/linux/usb/composite.h
> @@ -46,6 +46,9 @@
>   */
>  #define USB_GADGET_DELAYED_STATUS       0x7fff       /* Impossibly large 
> value */
>  
> +/* big enough to hold our biggest descriptor */
> +#define USB_COMP_EP0_BUFSIZ  1024
> +
>  struct usb_configuration;
>  
>  /**

-- 
Best regards,                                         _     _
.o. | Liege of Serenely Enlightened Majesty of      o' \,=./ `o
..o | Computer Science,  Michał “mina86” Nazarewicz    (o o)
ooo +----<email/xmpp: m...@google.com>--------------ooO--(_)--Ooo--

Attachment: pgpyXGLjaDcdR.pgp
Description: PGP signature

Reply via email to