summaryrefslogtreecommitdiffstats
path: root/arch/hexagon/kernel/traps.c
diff options
context:
space:
mode:
authorRichard Kuo <rkuo@codeaurora.org>2013-03-07 12:03:10 -0600
committerRichard Kuo <rkuo@codeaurora.org>2013-04-30 19:40:25 -0500
commit7777746c40876834c1527689336e43c8381b1921 (patch)
treeb3257768e29db418ab9292a4e9a27c56e1e88fed /arch/hexagon/kernel/traps.c
parentf8722a4d5243e779d6795e2d775c9114c44a6c26 (diff)
downloadlinux-7777746c40876834c1527689336e43c8381b1921.tar.bz2
Hexagon: add support for single-stepping (v4+)
Hardware single-step is only available on v4 and later architectures. Signed-off-by: Richard Kuo <rkuo@codeaurora.org>
Diffstat (limited to 'arch/hexagon/kernel/traps.c')
-rw-r--r--arch/hexagon/kernel/traps.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/arch/hexagon/kernel/traps.c b/arch/hexagon/kernel/traps.c
index 12164a30e8ff..c2eeeef55335 100644
--- a/arch/hexagon/kernel/traps.c
+++ b/arch/hexagon/kernel/traps.c
@@ -451,3 +451,14 @@ void do_machcheck(struct pt_regs *regs)
/* Halt and catch fire */
__vmstop();
}
+
+/*
+ * Treat this like the old 0xdb trap.
+ */
+
+void do_debug_exception(struct pt_regs *regs)
+{
+ regs->hvmer.vmest &= ~HVM_VMEST_CAUSE_MSK;
+ regs->hvmer.vmest |= (TRAP_DEBUG << HVM_VMEST_CAUSE_SFT);
+ do_trap0(regs);
+}