linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] OMAP2: PM: check UART status before trying to idle
@ 2010-10-06 15:52 Kevin Hilman
  2010-10-06 17:48 ` Tony Lindgren
  0 siblings, 1 reply; 2+ messages in thread
From: Kevin Hilman @ 2010-10-06 15:52 UTC (permalink / raw)
  To: linux-arm-kernel

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>
---
Tony, this fixes the UART lag when using the serial console on n8x0.
With this, the UARTs will not idle until their sleep timeouts are
activated, and they're disabled by default.

There's an additional bug I'm still looking into as to why UART3
does not trigger wakeup from idle on 2420, but that is only triggered
after enabling UART timeouts.

 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 c1bceec..a40457d 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)
 {
 	if (omap2_fclks_active())
 		return 0;
+	if (!omap_uart_can_sleep())
+		return 0;
 	if (osc_ck->usecount > 1)
 		return 0;
 	if (omap_dma_running())
-- 
1.7.2.1

^ permalink raw reply related	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2010-10-06 17:48 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-10-06 15:52 [PATCH] OMAP2: PM: check UART status before trying to idle Kevin Hilman
2010-10-06 17:48 ` Tony Lindgren

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).