]> git.karo-electronics.de Git - mv-sheeva.git/blobdiff - drivers/usb/core/endpoint.c
Merge branch 'master' into tk71
[mv-sheeva.git] / drivers / usb / core / endpoint.c
index 3788e738e265058ec164368a06fbf6897305aa51..df502a98d0df0611e206d7e32e12c1bf1a5b39df 100644 (file)
@@ -192,17 +192,17 @@ int usb_create_ep_devs(struct device *parent,
        ep_dev->dev.parent = parent;
        ep_dev->dev.release = ep_device_release;
        dev_set_name(&ep_dev->dev, "ep_%02x", endpoint->desc.bEndpointAddress);
-       device_enable_async_suspend(&ep_dev->dev);
 
        retval = device_register(&ep_dev->dev);
        if (retval)
                goto error_register;
 
+       device_enable_async_suspend(&ep_dev->dev);
        endpoint->ep_dev = ep_dev;
        return retval;
 
 error_register:
-       kfree(ep_dev);
+       put_device(&ep_dev->dev);
 exit:
        return retval;
 }