summaryrefslogtreecommitdiff
path: root/include/asm-arm
diff options
context:
space:
mode:
Diffstat (limited to 'include/asm-arm')
-rw-r--r--include/asm-arm/arch-ebsa285/debug-macro.S7
-rw-r--r--include/asm-arm/arch-rpc/debug-macro.S5
-rw-r--r--include/asm-arm/ptrace.h5
-rw-r--r--include/asm-arm/system.h3
4 files changed, 13 insertions, 7 deletions
diff --git a/include/asm-arm/arch-ebsa285/debug-macro.S b/include/asm-arm/arch-ebsa285/debug-macro.S
index 237853d..97d15fc 100644
--- a/include/asm-arm/arch-ebsa285/debug-macro.S
+++ b/include/asm-arm/arch-ebsa285/debug-macro.S
@@ -45,9 +45,12 @@
.equ dc21285_low, ARMCSR_BASE & 0x00ffffff
.macro addruart,rx
- mov \rx, #dc21285_high
+ mrc p15, 0, \rx, c1, c0
+ tst \rx, #1 @ MMU enabled?
+ moveq \rx, #0x42000000
+ movne \rx, #dc21285_high
.if dc21285_low
- orr \rx, \rx, #dc21285_low
+ orrne \rx, \rx, #dc21285_low
.endif
.endm
diff --git a/include/asm-arm/arch-rpc/debug-macro.S b/include/asm-arm/arch-rpc/debug-macro.S
index 0711828..456d3d7 100644
--- a/include/asm-arm/arch-rpc/debug-macro.S
+++ b/include/asm-arm/arch-rpc/debug-macro.S
@@ -12,7 +12,10 @@
*/
.macro addruart,rx
- mov \rx, #0xe0000000
+ mrc p15, 0, \rx, c1, c0
+ tst \rx, #1 @ MMU enabled?
+ moveq \rx, #0x03000000
+ movne \rx, #0xe0000000
orr \rx, \rx, #0x00010000
orr \rx, \rx, #0x00000fe0
.endm
diff --git a/include/asm-arm/ptrace.h b/include/asm-arm/ptrace.h
index 604e3a1..4377e22 100644
--- a/include/asm-arm/ptrace.h
+++ b/include/asm-arm/ptrace.h
@@ -142,11 +142,8 @@ extern unsigned long profile_pc(struct pt_regs *regs);
#endif
#ifdef __KERNEL__
-extern void show_regs(struct pt_regs *);
-
-#define predicate(x) (x & 0xf0000000)
+#define predicate(x) ((x) & 0xf0000000)
#define PREDICATE_ALWAYS 0xe0000000
-
#endif
#endif /* __ASSEMBLY__ */
diff --git a/include/asm-arm/system.h b/include/asm-arm/system.h
index b573129..b13a8da 100644
--- a/include/asm-arm/system.h
+++ b/include/asm-arm/system.h
@@ -99,6 +99,9 @@ void hook_fault_code(int nr, int (*fn)(unsigned long, unsigned int,
#define tas(ptr) (xchg((ptr),1))
extern asmlinkage void __backtrace(void);
+extern asmlinkage void c_backtrace(unsigned long fp, int pmode);
+extern void show_pte(struct mm_struct *mm, unsigned long addr);
+extern void __show_regs(struct pt_regs *);
extern int cpu_architecture(void);