diff options
| author | Rob Purchase <shotofadds@rockbox.org> | 2008-05-31 11:30:24 +0000 |
|---|---|---|
| committer | Rob Purchase <shotofadds@rockbox.org> | 2008-05-31 11:30:24 +0000 |
| commit | 3f7f5d743181b6fb24fd7cfddced0a76951268c6 (patch) | |
| tree | c4ebdf7544b750ad3963c0ab11d44d9d876ce314 | |
| parent | d701d403808608d92e58574c76ec1b27f7adad84 (diff) | |
| download | rockbox-3f7f5d743181b6fb24fd7cfddced0a76951268c6.zip rockbox-3f7f5d743181b6fb24fd7cfddced0a76951268c6.tar.gz rockbox-3f7f5d743181b6fb24fd7cfddced0a76951268c6.tar.bz2 rockbox-3f7f5d743181b6fb24fd7cfddced0a76951268c6.tar.xz | |
D2: Stop panic screen from crashing instantly (seems this has been broken for a while).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17670 a1c6a512-1295-4272-9138-f99709370657
| -rw-r--r-- | firmware/panic.c | 2 | ||||
| -rw-r--r-- | firmware/target/arm/tcc780x/system-tcc780x.c | 9 |
2 files changed, 10 insertions, 1 deletions
diff --git a/firmware/panic.c b/firmware/panic.c index dca5114..fbb6afc 100644 --- a/firmware/panic.c +++ b/firmware/panic.c @@ -111,6 +111,8 @@ void panicf( const char *fmt, ...) if ((GPIO_READ & 0x0c000000) == 0x08000000) /* check for ON button and !hold */ #elif defined(IAUDIO_M3) if ((GPIO1_READ & 0x202) == 0x200) /* check for ON button and !hold */ +#elif defined(COWON_D2) + if (GPIOA & 0x10) /* check for power button */ #elif CONFIG_CPU == SH7034 #if CONFIG_KEYPAD == PLAYER_PAD if (!(PADRL & 0x20)) diff --git a/firmware/target/arm/tcc780x/system-tcc780x.c b/firmware/target/arm/tcc780x/system-tcc780x.c index 54cd3ff..7e07ed7 100644 --- a/firmware/target/arm/tcc780x/system-tcc780x.c +++ b/firmware/target/arm/tcc780x/system-tcc780x.c @@ -275,7 +275,14 @@ void system_init(void) void system_reboot(void) { - SWRESET = -1; + disable_interrupt(IRQ_FIQ_DISABLED); + +#ifdef HAVE_ADJUSTABLE_CPU_FREQ + set_cpu_frequency(CPUFREQ_DEFAULT); +#endif + + /* TODO: implement reboot (eg. jump to boot ROM?) */ + while (1); } int system_memory_guard(int newmode) |