Message ID | 1416522501-14999-3-git-send-email-tony@atomide.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On 11/21/2014 12:28 AM, Tony Lindgren wrote: > 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. > > Cc: Arnd Bergmann <arnd@arndb.de> > Cc: Roger Quadros <rogerq@ti.com> > Signed-off-by: Tony Lindgren <tony@atomide.com> I guess gpmc_init can't still be put under module_init() till we have fixed up some more issues in the GPMC driver. But it shouldn't prevent us from making the move to drivers/, so Acked-by: Roger Quadros <rogerq@ti.com> cheers, -roger > --- > arch/arm/mach-omap2/devices.c | 26 ++++++++++++++++++++++++++ > arch/arm/mach-omap2/gpmc.c | 31 +------------------------------ > 2 files changed, 27 insertions(+), 30 deletions(-) > > diff --git a/arch/arm/mach-omap2/devices.c b/arch/arm/mach-omap2/devices.c > index 324f02b..110256a 100644 > --- a/arch/arm/mach-omap2/devices.c > +++ b/arch/arm/mach-omap2/devices.c > @@ -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); > diff --git a/arch/arm/mach-omap2/gpmc.c b/arch/arm/mach-omap2/gpmc.c > index bc14f25..80dfb17 100644 > --- a/arch/arm/mach-omap2/gpmc.c > +++ b/arch/arm/mach-omap2/gpmc.c > @@ -37,9 +37,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" > @@ -2010,35 +2007,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; > -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
* Roger Quadros <rogerq@ti.com> [141121 01:43]: > On 11/21/2014 12:28 AM, Tony Lindgren wrote: > > 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. > > > > Cc: Arnd Bergmann <arnd@arndb.de> > > Cc: Roger Quadros <rogerq@ti.com> > > Signed-off-by: Tony Lindgren <tony@atomide.com> > > I guess gpmc_init can't still be put under module_init() till we have fixed up > some more issues in the GPMC driver. But it shouldn't prevent us from making > the move to drivers/, so > > Acked-by: Roger Quadros <rogerq@ti.com> Yeah I figured it's too close to the merge cycle to start playing with the initcall levels. It may already be possible to make it just module_init() but let's do that as separate patches after the move. Regards, Tony -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/arch/arm/mach-omap2/devices.c b/arch/arm/mach-omap2/devices.c index 324f02b..110256a 100644 --- a/arch/arm/mach-omap2/devices.c +++ b/arch/arm/mach-omap2/devices.c @@ -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); diff --git a/arch/arm/mach-omap2/gpmc.c b/arch/arm/mach-omap2/gpmc.c index bc14f25..80dfb17 100644 --- a/arch/arm/mach-omap2/gpmc.c +++ b/arch/arm/mach-omap2/gpmc.c @@ -37,9 +37,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" @@ -2010,35 +2007,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;
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. Cc: Arnd Bergmann <arnd@arndb.de> Cc: Roger Quadros <rogerq@ti.com> Signed-off-by: Tony Lindgren <tony@atomide.com> --- arch/arm/mach-omap2/devices.c | 26 ++++++++++++++++++++++++++ arch/arm/mach-omap2/gpmc.c | 31 +------------------------------ 2 files changed, 27 insertions(+), 30 deletions(-)