USB: gadget: core: adjust uevent timing on gadget unbind
[linux-2.6-block.git] / drivers / usb / gadget / udc / core.c
index ded9531f141b1b94bd7505d10652f21ad0546cd5..d59f94464b870b76c21a5b0380460479fdd1e8ed 100644 (file)
@@ -1646,8 +1646,6 @@ static void gadget_unbind_driver(struct device *dev)
 
        dev_dbg(&udc->dev, "unbinding gadget driver [%s]\n", driver->function);
 
-       kobject_uevent(&udc->dev.kobj, KOBJ_CHANGE);
-
        udc->allow_connect = false;
        cancel_work_sync(&udc->vbus_work);
        mutex_lock(&udc->connect_lock);
@@ -1667,6 +1665,8 @@ static void gadget_unbind_driver(struct device *dev)
        driver->is_bound = false;
        udc->driver = NULL;
        mutex_unlock(&udc_lock);
+
+       kobject_uevent(&udc->dev.kobj, KOBJ_CHANGE);
 }
 
 /* ------------------------------------------------------------------------- */