Sebastian Andrzej Siewior <bigeasy@xxxxxxxxxxxxx> 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 <bigeasy@xxxxxxxxxxxxx> Acked-by: Michal Nazarewicz <mina86@xxxxxxxxxx> > --- > 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: mpn@xxxxxxxxxx>--------------ooO--(_)--Ooo--
Attachment:
pgpz5m2aqeXCS.pgp
Description: PGP signature