diff options
author | Stefan Roese <sr@denx.de> | 2007-04-29 16:40:31 +0200 |
---|---|---|
committer | Stefan Roese <sr@denx.de> | 2007-04-29 16:40:31 +0200 |
commit | bd38b7ecfdf01e0b7bce551a0834226630be81c1 (patch) | |
tree | e86a79fb7791af81a3325d0e177abdc2d97624d4 /cpu/at32ap/exception.c | |
parent | 6f69bbc8f33f03f6a1adf845101c15a9917ff5f5 (diff) | |
parent | 14da5f7675bbb427c469e3f45006e027b6e21db9 (diff) | |
download | u-boot-imx-bd38b7ecfdf01e0b7bce551a0834226630be81c1.zip u-boot-imx-bd38b7ecfdf01e0b7bce551a0834226630be81c1.tar.gz u-boot-imx-bd38b7ecfdf01e0b7bce551a0834226630be81c1.tar.bz2 |
Merge with git://www.denx.de/git/u-boot.git
Diffstat (limited to 'cpu/at32ap/exception.c')
-rw-r--r-- | cpu/at32ap/exception.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/cpu/at32ap/exception.c b/cpu/at32ap/exception.c index 4123c44..0672685 100644 --- a/cpu/at32ap/exception.c +++ b/cpu/at32ap/exception.c @@ -24,6 +24,8 @@ #include <asm/sysreg.h> #include <asm/ptrace.h> +DECLARE_GLOBAL_DATA_PTR; + static const char * const cpu_modes[8] = { "Application", "Supervisor", "Interrupt level 0", "Interrupt level 1", "Interrupt level 2", "Interrupt level 3", "Exception", "NMI" @@ -109,11 +111,10 @@ void do_unknown_exception(unsigned int ecr, struct pt_regs *regs) printf("CPU Mode: %s\n", cpu_modes[mode]); /* Avoid exception loops */ - if (regs->sp >= CFG_INIT_SP_ADDR - || regs->sp < (CFG_INIT_SP_ADDR - CONFIG_STACKSIZE)) + if (regs->sp < CFG_SDRAM_BASE || regs->sp >= gd->stack_end) printf("\nStack pointer seems bogus, won't do stack dump\n"); else - dump_mem("\nStack: ", regs->sp, CFG_INIT_SP_ADDR); + dump_mem("\nStack: ", regs->sp, gd->stack_end); panic("Unhandled exception\n"); } |