Nishanth Menon <nm@xxxxxx> writes: > Since we do module_init, cpufreq initializes before power late_init > where many of the required data structures are registered. What exactly are the dependencies here? The only thing I see is the dependency on omap2_get_mpuss_device(), and those devices should be created as a postcore_initcall. If there are other dependencies, they're probably created a side effect of your earlier patches where you moved stuff from the ->init hook (which happens much later) into the initcall function. Maybe that needs a rethink? > Move cpufreq init to late_initcall instead. Further CONFIG_CPU_FREQ on > which the build depends is bool and does'nt support modules yet. > > Signed-off-by: Nishanth Menon <nm@xxxxxx> If this works, it's only because of the link order defined by the Makefile ordering since both are the same level of initcall. When I move this driver to drivers/cpufreq, then the link order is less obvious. Kevin > --- > arch/arm/mach-omap2/omap2plus-cpufreq.c | 2 +- > 1 files changed, 1 insertions(+), 1 deletions(-) > > diff --git a/arch/arm/mach-omap2/omap2plus-cpufreq.c b/arch/arm/mach-omap2/omap2plus-cpufreq.c > index 2177381..07c2ab9 100644 > --- a/arch/arm/mach-omap2/omap2plus-cpufreq.c > +++ b/arch/arm/mach-omap2/omap2plus-cpufreq.c > @@ -273,5 +273,5 @@ static void __exit omap_cpufreq_exit(void) > > MODULE_DESCRIPTION("cpufreq driver for OMAP2PLUS SOCs"); > MODULE_LICENSE("GPL"); > -module_init(omap_cpufreq_init); > +late_initcall(omap_cpufreq_init); > module_exit(omap_cpufreq_exit); -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html