summaryrefslogtreecommitdiffstats
path: root/sys/conf
diff options
context:
space:
mode:
authorzbb <zbb@FreeBSD.org>2016-01-25 18:02:28 +0000
committerzbb <zbb@FreeBSD.org>2016-01-25 18:02:28 +0000
commit030d8a98be4d12e5d21f7598f04e842cfd7361cb (patch)
tree15c3b419eb8896939a97253487a76c6f54551529 /sys/conf
parentd83e0fe4719b68ddd6c295f800453d8420aebba0 (diff)
downloadFreeBSD-src-030d8a98be4d12e5d21f7598f04e842cfd7361cb.zip
FreeBSD-src-030d8a98be4d12e5d21f7598f04e842cfd7361cb.tar.gz
Introduce support for HW watchpoints and single stepping for ARMv6/v7
Allows for using hardware watchpoints for 1, 2, 4, 8 byte long addresses. The default configuration of watchpoint is RW but code allows to select RO or WO and X. Since debugging registers are per-CPU (CP14) the watchpoint is set on the CPU that was lucky (or not) to enter DDB. HW breakpoints are used to perform single step in KDB. When HW breakpoint is enabled all watchpoints are temporary disabled to avoid recursive abort on both watchpoint and breakpoint. In case of branch, the breakpoint is set to both - next instruction and possible branch address. This requires at least 2 breakpoints supported in the CPU however this is a must for ARMv6/v7 CPUs. Reviewed by: imp Submitted by: Zbigniew Bodek <zbb@semihalf.com> Obtained from: Semihalf Sponsored by: Juniper Networks Inc. Differential Revision: https://reviews.freebsd.org/D4037
Diffstat (limited to 'sys/conf')
-rw-r--r--sys/conf/files.arm1
1 files changed, 1 insertions, 0 deletions
diff --git a/sys/conf/files.arm b/sys/conf/files.arm
index b3b9ea3..33bdd94 100644
--- a/sys/conf/files.arm
+++ b/sys/conf/files.arm
@@ -29,6 +29,7 @@ arm/arm/cpu_asm-v6.S optional armv6
arm/arm/db_disasm.c optional ddb
arm/arm/db_interface.c optional ddb
arm/arm/db_trace.c optional ddb
+arm/arm/debug_monitor.c optional ddb armv6
arm/arm/devmap.c standard
arm/arm/disassem.c optional ddb
arm/arm/dump_machdep.c standard
OpenPOWER on IntegriCloud