aboutsummaryrefslogtreecommitdiff
path: root/src/target/arm_dpm.h
diff options
context:
space:
mode:
authorMatthias Welwarsky <matthias.welwarsky@sysgo.com>2016-10-06 16:10:38 +0200
committerMatthias Welwarsky <matthias.welwarsky@sysgo.com>2017-02-10 14:18:34 +0100
commit79c4c22e1570cf0d73bacb4d292951e614d0ab2f (patch)
tree6cb6994ed741cc88c04c47cbd3bda9144af9f989 /src/target/arm_dpm.h
parent2539a323081f046b14ad613b4a163baaf2679a9f (diff)
downloadriscv-openocd-79c4c22e1570cf0d73bacb4d292951e614d0ab2f.zip
riscv-openocd-79c4c22e1570cf0d73bacb4d292951e614d0ab2f.tar.gz
riscv-openocd-79c4c22e1570cf0d73bacb4d292951e614d0ab2f.tar.bz2
aarch64: register access rewrite
All register access is now performed through common read/write functions, which delegate the actual register access to the armv8_common object. armv8_common contains function pointers to direct read and write requests to the respective low-level functions for each PE state. The respective read/write functions are selected on debug state entry. At the same time, T32 opcodes are now formatted for ITR in dpmv8_exec_opcode() and the T32_FMTITR macro is removed from global visibility. Change-Id: I9eaef017c7cc9e0c531e693c534901bfdbdb842c Signed-off-by: Matthias Welwarsky <matthias.welwarsky@sysgo.com>
Diffstat (limited to 'src/target/arm_dpm.h')
-rw-r--r--src/target/arm_dpm.h5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/target/arm_dpm.h b/src/target/arm_dpm.h
index 63467d5..f8d1248 100644
--- a/src/target/arm_dpm.h
+++ b/src/target/arm_dpm.h
@@ -143,6 +143,9 @@ struct arm_dpm {
/** Recent value of DSCR. */
uint32_t dscr;
+ /** Recent exception level on armv8 */
+ unsigned int last_el;
+
/* FIXME -- read/write DCSR methods and symbols */
};
@@ -150,10 +153,8 @@ int arm_dpm_setup(struct arm_dpm *dpm);
int arm_dpm_initialize(struct arm_dpm *dpm);
int arm_dpm_read_current_registers(struct arm_dpm *);
-int arm_dpm_read_current_registers_64(struct arm_dpm *);
int dpm_modeswitch(struct arm_dpm *dpm, enum arm_mode mode);
-
int arm_dpm_write_dirty_registers(struct arm_dpm *, bool bpwp);
void arm_dpm_report_wfar(struct arm_dpm *, uint32_t wfar);