From 50304a3ace02907c6c49aa0dce0a59584ea02c4f Mon Sep 17 00:00:00 2001 From: Karl Kurbjun Date: Wed, 8 Jul 2009 14:30:03 +0000 Subject: [PATCH] M:Robe 500: fix a bug where the remote LCD was not properly sleeping git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21714 a1c6a512-1295-4272-9138-f99709370657 --- firmware/target/arm/tms320dm320/mrobe-500/lcd-remote-mr500.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/firmware/target/arm/tms320dm320/mrobe-500/lcd-remote-mr500.c b/firmware/target/arm/tms320dm320/mrobe-500/lcd-remote-mr500.c index 742cab3b27..f35524d88e 100644 --- a/firmware/target/arm/tms320dm320/mrobe-500/lcd-remote-mr500.c +++ b/firmware/target/arm/tms320dm320/mrobe-500/lcd-remote-mr500.c @@ -123,7 +123,7 @@ static void remote_tick(void) int bat_level; static unsigned char pause_length=0; - if(remote_state_control!=REMOTE_CONTROL_DRAW) { + if(remote_state_control!=REMOTE_CONTROL_DRAW && remote_state_control!=REMOTE_CONTROL_IDLE) { remote_state_control=remote_state_control_next; remote_state_control_next=REMOTE_CONTROL_MASK; } @@ -131,6 +131,9 @@ static void remote_tick(void) switch (remote_state_control) { case REMOTE_CONTROL_IDLE: + /* State machine never leaves idle unless remote_state_control is + * manually set. + */ remote_payload_size=0; remote_state_control=REMOTE_CONTROL_IDLE; break;