forked from len0rd/rockbox
Coldfire: The memory guard configuration routine didn't correctly return the old mode when setting a new one.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7744 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
parent
8f71973918
commit
8b88928dd3
1 changed files with 3 additions and 3 deletions
|
|
@ -549,15 +549,14 @@ int system_memory_guard(int newmode)
|
||||||
/* Note: CPU space accesses (movec instruction), interrupt acknowledges
|
/* Note: CPU space accesses (movec instruction), interrupt acknowledges
|
||||||
and emulator mode accesses are never caught. */
|
and emulator mode accesses are never caught. */
|
||||||
};
|
};
|
||||||
static int oldmode = MEMGUARD_NONE;
|
static int cur_mode = MEMGUARD_NONE;
|
||||||
|
|
||||||
|
int oldmode = cur_mode;
|
||||||
const unsigned long *ptr;
|
const unsigned long *ptr;
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
if (newmode == MEMGUARD_KEEP)
|
if (newmode == MEMGUARD_KEEP)
|
||||||
newmode = oldmode;
|
newmode = oldmode;
|
||||||
else
|
|
||||||
oldmode = newmode;
|
|
||||||
|
|
||||||
/* Always set the new mode, we don't know the old settings
|
/* Always set the new mode, we don't know the old settings
|
||||||
as we cannot read back */
|
as we cannot read back */
|
||||||
|
|
@ -567,6 +566,7 @@ int system_memory_guard(int newmode)
|
||||||
asm ( "wdebug (%0) \n" : : "a"(ptr));
|
asm ( "wdebug (%0) \n" : : "a"(ptr));
|
||||||
ptr += 2;
|
ptr += 2;
|
||||||
}
|
}
|
||||||
|
cur_mode = newmode;
|
||||||
|
|
||||||
return oldmode;
|
return oldmode;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue