diff options
author | David Ung <davidu@nvidia.com> | 2015-01-16 18:04:06 -0800 |
---|---|---|
committer | Matthias Welwarsky <matthias.welwarsky@sysgo.com> | 2017-02-10 13:54:01 +0100 |
commit | 84a0bb4a3c3c883b22f95abc7f1428faef3936f1 (patch) | |
tree | 4811a836e84884cdf179566afbb6235dfdc01c8c /src/target/arm_dpm.h | |
parent | 9cbfc9feb35ce0fcc9bb67a4d83b02100ee65f88 (diff) | |
download | riscv-openocd-84a0bb4a3c3c883b22f95abc7f1428faef3936f1.zip riscv-openocd-84a0bb4a3c3c883b22f95abc7f1428faef3936f1.tar.gz riscv-openocd-84a0bb4a3c3c883b22f95abc7f1428faef3936f1.tar.bz2 |
arm_dpm: Add 64bit register handling.
Add various function to read/write ARMv8 registers.
Change-Id: I16f2829bdd0e87b050a51e414ff675d5c21bcbae
Signed-off-by: David Ung <david.ung.42@gmail.com>
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 | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/target/arm_dpm.h b/src/target/arm_dpm.h index bbcae78..9cc0304 100644 --- a/src/target/arm_dpm.h +++ b/src/target/arm_dpm.h @@ -86,10 +86,19 @@ struct arm_dpm { int (*instr_read_data_dcc)(struct arm_dpm *, uint32_t opcode, uint32_t *data); + int (*instr_read_data_dcc_64)(struct arm_dpm *, + uint32_t opcode, uint64_t *data); + /** Runs one instruction, reading data from r0 after execution. */ int (*instr_read_data_r0)(struct arm_dpm *, uint32_t opcode, uint32_t *data); + int (*instr_read_data_r0_64)(struct arm_dpm *, + uint32_t opcode, uint64_t *data); + + struct reg *(*arm_reg_current)(struct arm *arm, + unsigned regnum); + /* BREAKPOINT/WATCHPOINT SUPPORT */ /** @@ -131,6 +140,7 @@ 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); |