From f71d8d3e576e61345d0a9ce974cb16f7a8b535ba Mon Sep 17 00:00:00 2001 From: Jens Arnold Date: Thu, 11 Aug 2005 21:47:52 +0000 Subject: [PATCH] Backlight dimming: Don't unboost the CPU from within the isr. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7310 a1c6a512-1295-4272-9138-f99709370657 --- firmware/backlight.c | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/firmware/backlight.c b/firmware/backlight.c index 8b5eb47518..55e3f44cc5 100644 --- a/firmware/backlight.c +++ b/firmware/backlight.c @@ -44,6 +44,7 @@ const char backlight_timeout_value[19] = #define BACKLIGHT_OFF 2 #define REMOTE_BACKLIGHT_ON 3 #define REMOTE_BACKLIGHT_OFF 4 +#define BACKLIGHT_UNBOOST_CPU 5 static void backlight_thread(void); static long backlight_stack[DEFAULT_STACK_SIZE/sizeof(long)]; @@ -130,7 +131,7 @@ static void backlight_isr(void) if (idle) { - cpu_boost(false); + queue_post(&backlight_queue, BACKLIGHT_UNBOOST_CPU, NULL); timer_unregister(); bl_timer_active = false; } @@ -293,7 +294,13 @@ void backlight_thread(void) case BACKLIGHT_OFF: __backlight_off(); break; - + +#if CONFIG_BACKLIGHT == BL_IRIVER + case BACKLIGHT_UNBOOST_CPU: + cpu_boost(false); + break; +#endif + case SYS_USB_CONNECTED: /* Tell the USB thread that we are safe */ DEBUGF("backlight_thread got SYS_USB_CONNECTED\n");