summaryrefslogtreecommitdiffstats
path: root/arch/arm/include
diff options
context:
space:
mode:
authorWill Deacon <will.deacon@arm.com>2011-08-02 16:16:57 +0100
committerWill Deacon <will.deacon@arm.com>2011-08-31 10:42:48 +0100
commit6f26aa05c9edffff6a4c2cd71774bc659a5cceec (patch)
treea2db63a03389e2153004347ddd93805486d1076b /arch/arm/include
parentc512de955f0982aafa49d3f00d5643052a6790e5 (diff)
downloadblackbird-op-linux-6f26aa05c9edffff6a4c2cd71774bc659a5cceec.tar.gz
blackbird-op-linux-6f26aa05c9edffff6a4c2cd71774bc659a5cceec.zip
ARM: hw_breakpoint: add support for multiple watchpoints
ARM debug architecture 7.1 mandates that the DFAR is updated on a watchpoint debug exception to contain the faulting virtual address of the memory access. This allows us to determine which watchpoints have fired and therefore report useful information to userspace. This patch adds support for using the DFAR in the watchpoint handler, which allows us to support multiple watchpoints on CPUs implementing the new debug architecture. Signed-off-by: Will Deacon <will.deacon@arm.com>
Diffstat (limited to 'arch/arm/include')
-rw-r--r--arch/arm/include/asm/hw_breakpoint.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/arch/arm/include/asm/hw_breakpoint.h b/arch/arm/include/asm/hw_breakpoint.h
index 0ac141a87616..c190bc992f0e 100644
--- a/arch/arm/include/asm/hw_breakpoint.h
+++ b/arch/arm/include/asm/hw_breakpoint.h
@@ -58,6 +58,7 @@ static inline void decode_ctrl_reg(u32 reg,
/* Watchpoints */
#define ARM_BREAKPOINT_LOAD 1
#define ARM_BREAKPOINT_STORE 2
+#define ARM_FSR_ACCESS_MASK (1 << 11)
/* Privilege Levels */
#define ARM_BREAKPOINT_PRIV 1
OpenPOWER on IntegriCloud