diff options
author | Kevin Hilman <khilman@deeprootsystems.com> | 2010-10-08 13:23:32 -0400 |
---|---|---|
committer | Tony Lindgren <tony@atomide.com> | 2010-10-08 13:23:32 -0400 |
commit | 503923eeecb93ff69ee940549f314e0fe3a68429 (patch) | |
tree | fc07ee0f483c3e07a9d52d484c6a80987ed428de /arch/arm/mach-omap2/pm24xx.c | |
parent | cc7a1d2a540a780066aa562c651a88dd28b6fc8a (diff) |
OMAP2: PM: check UART status before trying to idle
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>
Diffstat (limited to 'arch/arm/mach-omap2/pm24xx.c')
-rw-r--r-- | arch/arm/mach-omap2/pm24xx.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/arch/arm/mach-omap2/pm24xx.c b/arch/arm/mach-omap2/pm24xx.c index 6aeedeacdad8..f5c7ef955942 100644 --- a/arch/arm/mach-omap2/pm24xx.c +++ b/arch/arm/mach-omap2/pm24xx.c | |||
@@ -245,6 +245,8 @@ static int omap2_can_sleep(void) | |||
245 | { | 245 | { |
246 | if (omap2_fclks_active()) | 246 | if (omap2_fclks_active()) |
247 | return 0; | 247 | return 0; |
248 | if (!omap_uart_can_sleep()) | ||
249 | return 0; | ||
248 | if (osc_ck->usecount > 1) | 250 | if (osc_ck->usecount > 1) |
249 | return 0; | 251 | return 0; |
250 | if (omap_dma_running()) | 252 | if (omap_dma_running()) |