diff options
author | Linus Nielsen Feltzing <linus@haxx.se> | 2005-05-20 18:15:14 +0000 |
---|---|---|
committer | Linus Nielsen Feltzing <linus@haxx.se> | 2005-05-20 18:15:14 +0000 |
commit | 3beafe4c44987d339a34be3dd1d19fefdb62df88 (patch) | |
tree | 80362131fe32ba09e50c3df37a533bc794335d7b | |
parent | 1b9ea4e19cc42824e3b44f2bdfd1c149656eb8a8 (diff) | |
download | rockbox-3beafe4c44987d339a34be3dd1d19fefdb62df88.tar.gz rockbox-3beafe4c44987d339a34be3dd1d19fefdb62df88.zip |
Added system_reboot() for iRiver
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6491 a1c6a512-1295-4272-9138-f99709370657
-rw-r--r-- | firmware/system.c | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/firmware/system.c b/firmware/system.c index 3253d3d7c5..be6be1dfaa 100644 --- a/firmware/system.c +++ b/firmware/system.c | |||
@@ -1065,8 +1065,20 @@ int system_memory_guard(int newmode) | |||
1065 | (void)newmode; | 1065 | (void)newmode; |
1066 | return 0; | 1066 | return 0; |
1067 | } | 1067 | } |
1068 | |||
1068 | void system_reboot (void) | 1069 | void system_reboot (void) |
1069 | { | 1070 | { |
1070 | /* dummy */ | 1071 | #if CONFIG_CPU == MCF5249 |
1072 | set_cpu_frequency(0); | ||
1073 | |||
1074 | asm(" move.w #0x2700,%sr"); | ||
1075 | /* Reset the cookie for the crt0 crash check */ | ||
1076 | asm(" move.l #0,%d0"); | ||
1077 | asm(" move.l %d0,0x10017ffc"); | ||
1078 | asm(" movec.l %d0,%vbr"); | ||
1079 | asm(" move.l 0,%sp"); | ||
1080 | asm(" move.l 4,%a0"); | ||
1081 | asm(" jmp (%a0)"); | ||
1082 | #endif | ||
1071 | } | 1083 | } |
1072 | #endif | 1084 | #endif |