diff options
author | Matthias Welwarsky <matthias.welwarsky@sysgo.com> | 2016-10-06 16:10:38 +0200 |
---|---|---|
committer | Matthias Welwarsky <matthias.welwarsky@sysgo.com> | 2017-02-10 14:18:34 +0100 |
commit | 79c4c22e1570cf0d73bacb4d292951e614d0ab2f (patch) | |
tree | 6cb6994ed741cc88c04c47cbd3bda9144af9f989 /src/target/arm_dpm.h | |
parent | 2539a323081f046b14ad613b4a163baaf2679a9f (diff) | |
download | riscv-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.h | 5 |
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); |