diff options
Diffstat (limited to 'drivers/usb/musb/musb_gadget.c')
| -rw-r--r-- | drivers/usb/musb/musb_gadget.c | 4 | 
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/usb/musb/musb_gadget.c b/drivers/usb/musb/musb_gadget.c index 8c41a2e6ea7..e81820370d6 100644 --- a/drivers/usb/musb/musb_gadget.c +++ b/drivers/usb/musb/musb_gadget.c @@ -1856,6 +1856,7 @@ int __init musb_gadget_setup(struct musb *musb)  	return 0;  err: +	musb->g.dev.parent = NULL;  	device_unregister(&musb->g.dev);  	return status;  } @@ -1863,7 +1864,8 @@ err:  void musb_gadget_cleanup(struct musb *musb)  {  	usb_del_gadget_udc(&musb->g); -	device_unregister(&musb->g.dev); +	if (musb->g.dev.parent) +		device_unregister(&musb->g.dev);  }  /*  |