]> git.karo-electronics.de Git - mv-sheeva.git/blobdiff - drivers/of/device.c
Merge branch 'master' into csb1725
[mv-sheeva.git] / drivers / of / device.c
index 92de0eb74aea9ebfb5825129d8dcd38b2e3bb232..45d86530799fce60e1f117dd7b55d9223f29748d 100644 (file)
@@ -81,29 +81,10 @@ struct device_attribute of_platform_device_attrs[] = {
        __ATTR_NULL
 };
 
-/**
- * of_release_dev - free an of device structure when all users of it are finished.
- * @dev: device that's been disconnected
- *
- * Will be called only by the device core when all users of this of device are
- * done.
- */
-void of_release_dev(struct device *dev)
-{
-       struct platform_device *ofdev;
-
-       ofdev = to_platform_device(dev);
-       of_node_put(ofdev->dev.of_node);
-       kfree(ofdev);
-}
-EXPORT_SYMBOL(of_release_dev);
-
-int of_device_register(struct platform_device *ofdev)
+int of_device_add(struct platform_device *ofdev)
 {
        BUG_ON(ofdev->dev.of_node == NULL);
 
-       device_initialize(&ofdev->dev);
-
        /* name and id have to be set so that the platform bus doesn't get
         * confused on matching */
        ofdev->name = dev_name(&ofdev->dev);
@@ -117,6 +98,12 @@ int of_device_register(struct platform_device *ofdev)
 
        return device_add(&ofdev->dev);
 }
+
+int of_device_register(struct platform_device *pdev)
+{
+       device_initialize(&pdev->dev);
+       return of_device_add(pdev);
+}
 EXPORT_SYMBOL(of_device_register);
 
 void of_device_unregister(struct platform_device *ofdev)