OMAP2: PM: check UART status before trying to idle
authorKevin Hilman <khilman@deeprootsystems.com>
Fri, 8 Oct 2010 17:23:32 +0000 (10:23 -0700)
committerTony Lindgren <tony@atomide.com>
Fri, 8 Oct 2010 17:23:32 +0000 (10:23 -0700)
As is done on OMAP3, check omap_uart_can_sleep() as one of the
pre-conditions for entering the idle loop.  Without this check,
entering idle introduces large latencies on active UARTs, and is
especially noticable on serial console.

Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
arch/arm/mach-omap2/pm24xx.c

index 6aeedeacdad86b78cb9ef511a822f20d7c40cd1c..f5c7ef95594237e33b53ed19d372d78da78b5351 100644 (file)
@@ -245,6 +245,8 @@ static int omap2_can_sleep(void)
 {
        if (omap2_fclks_active())
                return 0;
+       if (!omap_uart_can_sleep())
+               return 0;
        if (osc_ck->usecount > 1)
                return 0;
        if (omap_dma_running())