Merge branch 'fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/davej/cpufreq
[cascardo/linux.git] / drivers / usb / gadget / mv_udc_core.c
index 50baf3e..19bbe80 100644 (file)
@@ -608,6 +608,7 @@ static int  mv_ep_disable(struct usb_ep *_ep)
        nuke(ep, -ESHUTDOWN);
 
        ep->desc = NULL;
+       ep->ep.desc = NULL;
        ep->stopped = 1;
 
        spin_unlock_irqrestore(&udc->lock, flags);
@@ -771,8 +772,7 @@ mv_ep_queue(struct usb_ep *_ep, struct usb_request *_req, gfp_t gfp_flags)
                udc->ep0_state = DATA_STATE_XMIT;
 
        /* irq handler advances the queue */
-       if (req != NULL)
-               list_add_tail(&req->queue, &ep->queue);
+       list_add_tail(&req->queue, &ep->queue);
        spin_unlock_irqrestore(&udc->lock, flags);
 
        return 0;
@@ -1384,7 +1384,8 @@ static int mv_udc_start(struct usb_gadget_driver *driver,
        }
 
        if (udc->transceiver) {
-               retval = otg_set_peripheral(udc->transceiver, &udc->gadget);
+               retval = otg_set_peripheral(udc->transceiver->otg,
+                                       &udc->gadget);
                if (retval) {
                        dev_err(&udc->dev->dev,
                                "unable to register peripheral to otg\n");