From 4585fc58639757ee6f3a654697a9fb5763adffcd Mon Sep 17 00:00:00 2001 From: Bo Shen Date: Tue, 24 Sep 2013 13:19:24 +0800 Subject: USB: gadget: atmel: disconnect before unbind When unbind the gadget driver, need call disconnect first. Signed-off-by: Bo Shen --- drivers/usb/gadget/atmel_usba_udc.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'drivers/usb/gadget/atmel_usba_udc.c') diff --git a/drivers/usb/gadget/atmel_usba_udc.c b/drivers/usb/gadget/atmel_usba_udc.c index f146c48..c99208d 100644 --- a/drivers/usb/gadget/atmel_usba_udc.c +++ b/drivers/usb/gadget/atmel_usba_udc.c @@ -1240,11 +1240,12 @@ int usb_gadget_unregister_driver(struct usb_gadget_driver *driver) { struct usba_udc *udc = &controller; - if (!driver || !driver->bind || !driver->setup) { + if (!driver || !driver->unbind || !driver->disconnect) { error("bad paramter\n"); return -EINVAL; } + driver->disconnect(&udc->gadget); driver->unbind(&udc->gadget); udc->driver = NULL; -- cgit v1.1