diff mbox

[RESEND,PATCHv2,07/28] ARM: OMAP2+: timer: change order of hwmod data handling

Message ID 1465844702-12200-8-git-send-email-t-kristo@ti.com (mailing list archive)
State Changes Requested
Delegated to: Stephen Boyd
Headers show

Commit Message

Tero Kristo June 13, 2016, 7:04 p.m. UTC
With the introduction of hwmod module clocks, the name of the hwmod
main clk may not be available before hwmod setup, as hwmod setup
may lookup the main clock dynamically based on the hwmod name.
Thus, change the order of hwmod setup and main clock handling for
the timer code, to make sure the main clock is going to be
available.

Signed-off-by: Tero Kristo <t-kristo@ti.com>
---
 arch/arm/mach-omap2/timer.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

Comments

Tony Lindgren June 28, 2016, 7:04 a.m. UTC | #1
* Tero Kristo <t-kristo@ti.com> [160613 12:07]:
> With the introduction of hwmod module clocks, the name of the hwmod
> main clk may not be available before hwmod setup, as hwmod setup
> may lookup the main clock dynamically based on the hwmod name.
> Thus, change the order of hwmod setup and main clock handling for
> the timer code, to make sure the main clock is going to be
> available.

Acked-by: Tony Lindgren <tony@atomidme.com>

Also for this one, please let me know if this can be picked
separately.

Tony
--
To unsubscribe from this list: send the line "unsubscribe linux-clk" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff mbox

Patch

diff --git a/arch/arm/mach-omap2/timer.c b/arch/arm/mach-omap2/timer.c
index 08e08db..77fb4e1 100644
--- a/arch/arm/mach-omap2/timer.c
+++ b/arch/arm/mach-omap2/timer.c
@@ -290,6 +290,8 @@  static int __init omap_dm_timer_init_one(struct omap_dm_timer *timer,
 	if (!timer->io_base)
 		return -ENXIO;
 
+	omap_hwmod_setup_one(oh_name);
+
 	/* After the dmtimer is using hwmod these clocks won't be needed */
 	timer->fclk = ti_clk_get(omap_hwmod_get_main_clk(oh));
 	if (IS_ERR(timer->fclk))
@@ -304,7 +306,6 @@  static int __init omap_dm_timer_init_one(struct omap_dm_timer *timer,
 
 	clk_put(src);
 
-	omap_hwmod_setup_one(oh_name);
 	omap_hwmod_enable(oh);
 	__omap_dm_timer_init_regs(timer);