diff options
| author | Linus Nielsen Feltzing <linus@haxx.se> | 2002-07-25 22:04:03 +0000 |
|---|---|---|
| committer | Linus Nielsen Feltzing <linus@haxx.se> | 2002-07-25 22:04:03 +0000 |
| commit | 1cf053982e16a4d1e42e9e129265feef8f2b787c (patch) | |
| tree | ffbe11a44e976c79bace5fc09b423745dad017a0 | |
| parent | d731cdd0db2e5e0ba2272f89df47f44348943500 (diff) | |
| download | rockbox-1cf053982e16a4d1e42e9e129265feef8f2b787c.zip rockbox-1cf053982e16a4d1e42e9e129265feef8f2b787c.tar.gz rockbox-1cf053982e16a4d1e42e9e129265feef8f2b787c.tar.bz2 rockbox-1cf053982e16a4d1e42e9e129265feef8f2b787c.tar.xz | |
Now wakes up the backlight even after a power loss
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@1448 a1c6a512-1295-4272-9138-f99709370657
| -rw-r--r-- | firmware/backlight.c | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/firmware/backlight.c b/firmware/backlight.c index ccdf7a4..442c441 100644 --- a/firmware/backlight.c +++ b/firmware/backlight.c @@ -40,6 +40,7 @@ static int backlight_timeout = 5; void backlight_thread(void) { struct event ev; + int tmp; while(1) { @@ -51,7 +52,8 @@ void backlight_thread(void) if(backlight_timer) { #ifdef HAVE_RTC - rtc_write(0x13, 0x10); + tmp = rtc_read(0x0a); + rtc_write(0x0a, tmp | 0x40); /* Enable square wave */ #else PADR &= ~0x4000; #endif @@ -60,7 +62,8 @@ void backlight_thread(void) case BACKLIGHT_OFF: #ifdef HAVE_RTC - rtc_write(0x13, 0x00); + tmp = rtc_read(0x0a); + rtc_write(0x0a, tmp & ~0x40); /* Disable square wave */ #else PADR |= 0x4000; #endif @@ -109,7 +112,8 @@ void backlight_tick(void) void backlight_init(void) { #ifdef HAVE_RTC - rtc_write(0x0a, 0x40); /* Enable square wave */ + rtc_write(0x13, 0x10); /* 32 kHz swuare wave */ + rtc_write(0x01, 0x00); /* Clear Stop bit */ #endif queue_init(&backlight_queue); create_thread(backlight_thread, backlight_stack, |