]> git.kernelconcepts.de Git - karo-tx-linux.git/blobdiff - arch/arm/mach-omap2/omap_device.c
Merge tag 'armsoc-soc' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
[karo-tx-linux.git] / arch / arm / mach-omap2 / omap_device.c
index 4a7303cf563e09baeb0ecf473f8aa87cbfc06106..4cb8fd9f741fee7d86f78112616e32999544b016 100644 (file)
@@ -47,7 +47,7 @@ static void _add_clkdev(struct omap_device *od, const char *clk_alias,
                       const char *clk_name)
 {
        struct clk *r;
-       struct clk_lookup *l;
+       int rc;
 
        if (!clk_alias || !clk_name)
                return;
@@ -62,21 +62,15 @@ static void _add_clkdev(struct omap_device *od, const char *clk_alias,
                return;
        }
 
-       r = clk_get(NULL, clk_name);
-       if (IS_ERR(r)) {
-               dev_err(&od->pdev->dev,
-                       "clk_get for %s failed\n", clk_name);
-               return;
+       rc = clk_add_alias(clk_alias, dev_name(&od->pdev->dev), clk_name, NULL);
+       if (rc) {
+               if (rc == -ENODEV || rc == -ENOMEM)
+                       dev_err(&od->pdev->dev,
+                               "clkdev_alloc for %s failed\n", clk_alias);
+               else
+                       dev_err(&od->pdev->dev,
+                               "clk_get for %s failed\n", clk_name);
        }
-
-       l = clkdev_alloc(r, clk_alias, dev_name(&od->pdev->dev));
-       if (!l) {
-               dev_err(&od->pdev->dev,
-                       "clkdev_alloc for %s failed\n", clk_alias);
-               return;
-       }
-
-       clkdev_add(l);
 }
 
 /**
@@ -690,11 +684,8 @@ struct dev_pm_domain omap_device_pm_domain = {
                SET_RUNTIME_PM_OPS(_od_runtime_suspend, _od_runtime_resume,
                                   NULL)
                USE_PLATFORM_PM_SLEEP_OPS
-               .suspend_noirq = _od_suspend_noirq,
-               .resume_noirq = _od_resume_noirq,
-               .freeze_noirq = _od_suspend_noirq,
-               .thaw_noirq = _od_resume_noirq,
-               .restore_noirq = _od_resume_noirq,
+               SET_NOIRQ_SYSTEM_SLEEP_PM_OPS(_od_suspend_noirq,
+                                             _od_resume_noirq)
        }
 };