Re: Getting a gadget serial device working on Atmel SAMA5D31

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

 



Hi,

(please, don't top-post)

JB <jbworld.central@xxxxxxxxx> writes:
> [ text/plain ]
> But that's it. On the host side, the device is detected for a brief
> moment - I managed to get the device info, and it looks like the real
> deal:
>
> Gadget Serial v2.4:
>            Product ID: 0xa4a7
>            Vendor ID: 0x0525  (PLX Technology, Inc.)
>            Version: 4.05
>            Speed: Up to 480 Mb/sec
>            Manufacturer: Linux 4.5.0+ with atmel_usba_udc

4.5.0+, which patches do you have on top of 4.5 vanilla ?

Also, can you try this patch:

commit d0211ef4d96e1faf8939af6b171e47e6d85e31b2
Author: Felipe Balbi <felipe.balbi@xxxxxxxxxxxxxxx>
Date:   Mon Mar 21 09:04:23 2016 +0200

    usb: gadget: udc: atmel: don't disable enpdoints we don't own
    
    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>
    Tested-by: Gil Weber <gil.weber@xxxxxxxxxxxxxxxxxxxxxxxxx>
    Signed-off-by: Felipe Balbi <felipe.balbi@xxxxxxxxxxxxxxx>

diff --git a/drivers/usb/gadget/udc/atmel_usba_udc.c b/drivers/usb/gadget/udc/atmel_usba_udc.c
index 81d42cce885a..18569de06b04 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)

-- 
balbi

Attachment: signature.asc
Description: PGP signature


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

  Powered by Linux