diff --git a/arch/arm/mach-omap/pm.c b/arch/arm/mach-omap/pm.c
index 8c5e4626462162f8657d9c539845d33011739207..3aab70bbe8f971ea723b8738c6b7e128a45baf8f 100644
--- a/arch/arm/mach-omap/pm.c
+++ b/arch/arm/mach-omap/pm.c
@@ -93,10 +93,7 @@ void omap_pm_idle(void)
 	local_irq_enable();
 
 #if defined(CONFIG_OMAP_32K_TIMER) && defined(CONFIG_NO_IDLE_HZ)
-	/* Override timer to use dynamic tick for the next cycle */
-	if ((system_timer->dyn_tick->state & DYN_TICK_ENABLED)
-	    && system_timer->dyn_tick->reprogram)
-		system_timer->dyn_tick->reprogram();
+	timer_dyn_reprogram();
 #endif
 
 	/*