aboutsummaryrefslogtreecommitdiffstats
path: root/arch/blackfin/include/asm/context.S
diff options
context:
space:
mode:
authorRobin Getz <robin.getz@analog.com>2009-07-06 22:47:14 -0400
committerMike Frysinger <vapier@gentoo.org>2009-07-16 01:52:38 -0400
commitad863a9dc9887330b2ab753323063865c59d8db6 (patch)
tree43a6d72c0a89f22028fbaa34aab2ad27123ea2df /arch/blackfin/include/asm/context.S
parent3a920accbb5f88d753ab5a6a47d0dd48b6269f84 (diff)
Blackfin: fix handling of IPEND in interrupt context save
The interrupt context save logic incorrectly stored the address of the IPEND register rather than its value due to a missing dereference. While we're here, also enable this code for all kernel debugging scenarios and not just when KGDB is enabled. Signed-off-by: Robin Getz <robin.getz@analog.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Diffstat (limited to 'arch/blackfin/include/asm/context.S')
-rw-r--r--arch/blackfin/include/asm/context.S7
1 files changed, 4 insertions, 3 deletions
diff --git a/arch/blackfin/include/asm/context.S b/arch/blackfin/include/asm/context.S
index 16561ab18b38..f8a664f022b1 100644
--- a/arch/blackfin/include/asm/context.S
+++ b/arch/blackfin/include/asm/context.S
@@ -223,9 +223,10 @@
223 [--sp] = RETN; 223 [--sp] = RETN;
224 [--sp] = RETE; 224 [--sp] = RETE;
225 [--sp] = SEQSTAT; 225 [--sp] = SEQSTAT;
226#ifdef CONFIG_KGDB 226#ifdef CONFIG_DEBUG_KERNEL
227 r1.l = lo(IPEND); 227 p1.l = lo(IPEND);
228 r1.h = hi(IPEND); 228 p1.h = hi(IPEND);
229 r1 = [p1];
229 [--sp] = r1; 230 [--sp] = r1;
230#else 231#else
231 [--sp] = r0; /* Skip IPEND as well. */ 232 [--sp] = r0; /* Skip IPEND as well. */