]> git.kernelconcepts.de Git - karo-tx-linux.git/commitdiff
ARM: OMAP2+: Move GPMC initcall to devices.c
authorTony Lindgren <tony@atomide.com>
Thu, 20 Nov 2014 20:45:43 +0000 (12:45 -0800)
committerTony Lindgren <tony@atomide.com>
Fri, 28 Nov 2014 20:54:26 +0000 (12:54 -0800)
This will us allow to just move gpmc.c to live under drivers
in the next patch.

Note that we now also remove the omap specific check for the
initcall. That's OK as gpmc_probe() checks for the pdata
and bails out for other platforms compiled in.

Also the postcore_initcall() maybe possible to change to
just regular module_init(), but let's do that in separate
patch after the move to drivers is done.

Cc: Arnd Bergmann <arnd@arndb.de>
Acked-by: Roger Quadros <rogerq@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
arch/arm/mach-omap2/devices.c
arch/arm/mach-omap2/gpmc.c

index 324f02bf8a51da6b3d3395d30c309447a8f7c793..110256a56636d9caa6b4f9c004c2255191c47a59 100644 (file)
@@ -445,3 +445,29 @@ static int __init omap2_init_devices(void)
        return 0;
 }
 omap_arch_initcall(omap2_init_devices);
+
+static int __init omap_gpmc_init(void)
+{
+       struct omap_hwmod *oh;
+       struct platform_device *pdev;
+       char *oh_name = "gpmc";
+
+       /*
+        * if the board boots up with a populated DT, do not
+        * manually add the device from this initcall
+        */
+       if (of_have_populated_dt())
+               return -ENODEV;
+
+       oh = omap_hwmod_lookup(oh_name);
+       if (!oh) {
+               pr_err("Could not look up %s\n", oh_name);
+               return -ENODEV;
+       }
+
+       pdev = omap_device_build("omap-gpmc", -1, oh, NULL, 0);
+       WARN(IS_ERR(pdev), "could not build omap_device for %s\n", oh_name);
+
+       return PTR_RET(pdev);
+}
+omap_postcore_initcall(omap_gpmc_init);
index 0753a046fed202c153856fa31a4740dfd5b1c5dc..abfc0ddd076e1fa280c6cf861dcce872f588162b 100644 (file)
@@ -36,9 +36,6 @@
 #include <linux/platform_data/mtd-nand-omap2.h>
 #include <linux/platform_data/mtd-onenand-omap2.h>
 
-#include "soc.h"
-#include "omap_device.h"
-
 #include <asm/mach-types.h>
 
 #define        DEVICE_NAME             "omap-gpmc"
@@ -2009,35 +2006,9 @@ static __exit void gpmc_exit(void)
 
 }
 
-omap_postcore_initcall(gpmc_init);
+postcore_initcall(gpmc_init);
 module_exit(gpmc_exit);
 
-static int __init omap_gpmc_init(void)
-{
-       struct omap_hwmod *oh;
-       struct platform_device *pdev;
-       char *oh_name = "gpmc";
-
-       /*
-        * if the board boots up with a populated DT, do not
-        * manually add the device from this initcall
-        */
-       if (of_have_populated_dt())
-               return -ENODEV;
-
-       oh = omap_hwmod_lookup(oh_name);
-       if (!oh) {
-               pr_err("Could not look up %s\n", oh_name);
-               return -ENODEV;
-       }
-
-       pdev = omap_device_build(DEVICE_NAME, -1, oh, NULL, 0);
-       WARN(IS_ERR(pdev), "could not build omap_device for %s\n", oh_name);
-
-       return PTR_RET(pdev);
-}
-omap_postcore_initcall(omap_gpmc_init);
-
 static irqreturn_t gpmc_handle_irq(int irq, void *dev)
 {
        int i;