summaryrefslogtreecommitdiffstats
path: root/target-arm/internals.h
diff options
context:
space:
mode:
authorPeter Maydell2014-09-29 19:48:46 +0200
committerPeter Maydell2014-09-29 19:48:46 +0200
commit46747d15080a93cc82cac563c1b7b8ffef164bb5 (patch)
tree550a1ebd79c3033cb772ad5b8d2358c780035343 /target-arm/internals.h
parentlibqos: use microseconds instead of iterations for virtio timeout (diff)
downloadqemu-46747d15080a93cc82cac563c1b7b8ffef164bb5.tar.gz
qemu-46747d15080a93cc82cac563c1b7b8ffef164bb5.tar.xz
qemu-46747d15080a93cc82cac563c1b7b8ffef164bb5.zip
target-arm: Implement setting guest breakpoints
This patch adds support for setting guest breakpoints based on values the guest writes to the DBGBVR and DBGBCR registers. (It doesn't include the code to handle when these breakpoints fire, so has no guest-visible effect.) Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Message-id: 1410523465-13400-2-git-send-email-peter.maydell@linaro.org
Diffstat (limited to 'target-arm/internals.h')
-rw-r--r--target-arm/internals.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/target-arm/internals.h b/target-arm/internals.h
index 64751a0798..b7e4822dc7 100644
--- a/target-arm/internals.h
+++ b/target-arm/internals.h
@@ -322,6 +322,15 @@ void hw_watchpoint_update(ARMCPU *cpu, int n);
* suitable for use after migration or on reset.
*/
void hw_watchpoint_update_all(ARMCPU *cpu);
+/* Update a QEMU breakpoint based on the information the guest has set in the
+ * DBGBCR<n>_EL1 and DBGBVR<n>_EL1 registers.
+ */
+void hw_breakpoint_update(ARMCPU *cpu, int n);
+/* Update the QEMU breakpoints for every guest breakpoint. This does a
+ * complete delete-and-reinstate of the QEMU breakpoint list and so is
+ * suitable for use after migration or on reset.
+ */
+void hw_breakpoint_update_all(ARMCPU *cpu);
/* Callback function for when a watchpoint or breakpoint triggers. */
void arm_debug_excp_handler(CPUState *cs);