[PATCH 07/10] omap2+: Reserve clocksource and timesource and initialize dmtimer later
From: tony@atomide.com (Tony Lindgren)
Date: 2011-06-27 07:48:57
Also in:
linux-omap
From: tony@atomide.com (Tony Lindgren)
Date: 2011-06-27 07:48:57
Also in:
linux-omap
* Kevin Hilman [off-list ref] [110623 09:56]:
Tony Lindgren [off-list ref] writes:quoted
There's no need to initialize the dmtimer framework early.Actually, there is, because it's being used from the early code. The sys_timer.init functions are called before arch_initcalls, so before omap_dm_timer_init() is called, you have: omap3_timer_init() omap2_gp_clockevent_init() omap_dm_timer_init_one() omap_dm_timer_request_specific() Among other things, the spinlock is taken before it has been initialized in omap_dm_timer_init() (that's how I noticed this problem), but the rest of the init of course hasn't been done either. Basically, the problem is that this "early init" code is not only using the new macros, but it's also using functions from the "real" driver, which is not yet initialized.
Sounds like you did not apply the previous patch to remove the PM hack? There's no need to call to omap_dm_timer_request_specific here unless you added back the PM hack. Regards, Tony