]> git.karo-electronics.de Git - karo-tx-linux.git/blobdiff - drivers/usb/gadget/gmidi.c
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/wfg/writeback
[karo-tx-linux.git] / drivers / usb / gadget / gmidi.c
index 47b86b99d449bd3b9117732c3f5b5862773e4ec4..8b9220e128a7f8023bea11acb07aa2d67592db0e 100644 (file)
@@ -537,14 +537,16 @@ static int set_gmidi_config(struct gmidi_device *dev, gfp_t gfp_flags)
        struct usb_ep *ep;
        unsigned i;
 
-       err = usb_ep_enable(dev->in_ep, &bulk_in_desc);
+       dev->in_ep->desc = &bulk_in_desc;
+       err = usb_ep_enable(dev->in_ep);
        if (err) {
                ERROR(dev, "can't start %s: %d\n", dev->in_ep->name, err);
                goto fail;
        }
        dev->in_ep->driver_data = dev;
 
-       err = usb_ep_enable(dev->out_ep, &bulk_out_desc);
+       dev->out_ep->desc = &bulk_out_desc;
+       err = usb_ep_enable(dev->out_ep);
        if (err) {
                ERROR(dev, "can't start %s: %d\n", dev->out_ep->name, err);
                goto fail;
@@ -693,6 +695,7 @@ static int gmidi_setup(struct usb_gadget *gadget,
                switch (w_value >> 8) {
 
                case USB_DT_DEVICE:
+                       device_desc.bMaxPacketSize0 = gadget->ep0->maxpacket;
                        value = min(w_length, (u16) sizeof(device_desc));
                        memcpy(req->buf, &device_desc, value);
                        break;
@@ -1247,8 +1250,6 @@ autoconf_fail:
 
        dev->req->complete = gmidi_setup_complete;
 
-       device_desc.bMaxPacketSize0 = gadget->ep0->maxpacket;
-
        gadget->ep0->driver_data = dev;
 
        INFO(dev, "%s, version: " DRIVER_VERSION "\n", longname);