diff options
author | Vitaly Bordug <vitb@kernel.crashing.org> | 2007-09-27 00:36:22 +0400 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@suse.de> | 2007-10-12 14:55:30 -0700 |
commit | 437f375f262417b484f28007c3e8d21bd01d0e01 (patch) | |
tree | c687fe67514f56d978a44dae97829319ec89b700 /drivers | |
parent | a59048d46303c4146993c37f51ed97a760fc4c0a (diff) | |
download | linux-3.10-437f375f262417b484f28007c3e8d21bd01d0e01.tar.gz linux-3.10-437f375f262417b484f28007c3e8d21bd01d0e01.tar.bz2 linux-3.10-437f375f262417b484f28007c3e8d21bd01d0e01.zip |
USB: serial gadget: Disable endpoints on unload
After Serial gadget is being unloaded, neither serial itself, nor other
gadget stuff can be loaded subsequently.
Signed-off-by: Vitaly Bordug <vitb@kernel.crashing.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/usb/gadget/serial.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/usb/gadget/serial.c b/drivers/usb/gadget/serial.c index afdf71f76f7..a2a1ebc947d 100644 --- a/drivers/usb/gadget/serial.c +++ b/drivers/usb/gadget/serial.c @@ -1470,6 +1470,12 @@ static void /* __init_or_exit */ gs_unbind(struct usb_gadget *gadget) dev->dev_ctrl_req = NULL; } gs_free_ports(dev); + if (dev->dev_notify_ep) + usb_ep_disable(dev->dev_notify_ep); + if (dev->dev_in_ep) + usb_ep_disable(dev->dev_in_ep); + if (dev->dev_out_ep) + usb_ep_disable(dev->dev_out_ep); kfree(dev); set_gadget_data(gadget, NULL); } |