[PATCH] usb: gadget: udc: atmel: don't disable enpdoints we don't own

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

>UDC driver should NEVER do anything behind
>udc-core's back, so let's stop disabling endpoints
>we don't exactly own - rather we provide as
>resources for gadget drivers. This fixes the
>regression reported by Gil.
>
>Reported-by: Gil Weber <gil.weber@xxxxxxxxxxxxxxxxxxxxxxxxx>
>Signed-off-by: Felipe Balbi <felipe.balbi@xxxxxxxxxxxxxxx>

All is working for me now.
Tested-by: Gil Weber <gil.weber@xxxxxxxxxxxxxxxxxxxxxxxxx>

Many thanks,
Gil


>---
 >drivers/usb/gadget/udc/atmel_usba_udc.c | 14 --------------
> 1 file changed, 14 deletions(-)
>
>diff --git a/drivers/usb/gadget/udc/atmel_usba_udc.c b/drivers/usb/gadget/udc/atmel_usba_udc.c
>index 8755b2c2aada..5c96b9b0f48d 100644
>--- a/drivers/usb/gadget/udc/atmel_usba_udc.c
>+++ b/drivers/usb/gadget/udc/atmel_usba_udc.c
>@@ -1045,20 +1045,6 @@ static void reset_all_endpoints(struct usba_udc *udc)
 		>list_del_init(&req->queue);
> 		request_complete(ep, req, -ECONNRESET);
 	>}
>-
>-	/* NOTE:  normally, the next call to the gadget driver is in
>-	 * charge of disabling endpoints... usually disconnect().
>-	 * The exception would be entering a high speed test mode.
>-	 *
>-	 * FIXME remove this code ... and retest thoroughly.
>-	 */
>-	list_for_each_entry(ep, &udc->gadget.ep_list, ep.ep_list) {
>-		if (ep->ep.desc) {
>-			spin_unlock(&udc->lock);
>-			usba_ep_disable(&ep->ep);
>-			spin_lock(&udc->lock);
>-		}
>-	}
 >}
> 
 >static struct usba_ep *get_ep_by_addr(struct usba_udc *udc, u16 wIndex)
>-- 
>2.8.0.rc2
>
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux