summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRob Purchase <shotofadds@rockbox.org>2009-07-25 18:44:57 +0000
committerRob Purchase <shotofadds@rockbox.org>2009-07-25 18:44:57 +0000
commitfee24eefa9c843bac5586fb762da2d8871df3a65 (patch)
tree969b07c08a4730de7a98aeb7d93b5b959b0cef5d
parentaa97ba100aa19b893ba71dff28b5b0b5b0fc42b2 (diff)
downloadrockbox-fee24eefa9c843bac5586fb762da2d8871df3a65.tar.gz
rockbox-fee24eefa9c843bac5586fb762da2d8871df3a65.zip
D2: Fix the POWER button check after an exception/panic. Make this power the player off, since we don't know how to force a reboot yet.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22036 a1c6a512-1295-4272-9138-f99709370657
-rw-r--r--firmware/target/arm/tcc780x/system-tcc780x.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/firmware/target/arm/tcc780x/system-tcc780x.c b/firmware/target/arm/tcc780x/system-tcc780x.c
index 6362f17f71..d1927c065f 100644
--- a/firmware/target/arm/tcc780x/system-tcc780x.c
+++ b/firmware/target/arm/tcc780x/system-tcc780x.c
@@ -22,6 +22,7 @@
22#include "kernel.h" 22#include "kernel.h"
23#include "system.h" 23#include "system.h"
24#include "panic.h" 24#include "panic.h"
25#include "power.h"
25 26
26#define default_interrupt(name) \ 27#define default_interrupt(name) \
27 extern __attribute__((weak,alias("UIRQ"))) void name (void) 28 extern __attribute__((weak,alias("UIRQ"))) void name (void)
@@ -282,12 +283,16 @@ void system_reboot(void)
282#endif 283#endif
283 284
284 /* TODO: implement reboot (eg. jump to boot ROM?) */ 285 /* TODO: implement reboot (eg. jump to boot ROM?) */
285 while (1); 286 power_off();
286} 287}
287 288
288void system_exception_wait(void) 289void system_exception_wait(void)
289{ 290{
290 while ((GPIOA & 0x10) == 0); /* check for power button */ 291#ifdef COWON_D2
292 while ((GPIOA & 0x4) != 0); /* check for power button */
293#else
294 #error "system_exception_wait not implemented for this target"
295#endif
291} 296}
292 297
293int system_memory_guard(int newmode) 298int system_memory_guard(int newmode)