aboutsummaryrefslogtreecommitdiff
path: root/src/target/armv8.c
diff options
context:
space:
mode:
authorMatthias Welwarsky <matthias.welwarsky@sysgo.com>2016-09-03 16:35:59 +0200
committerMatthias Welwarsky <matthias.welwarsky@sysgo.com>2017-02-10 14:01:38 +0100
commitf2a271e2643e8a57881d5db7aceb21fc36140bc2 (patch)
treeedc1dcc6b3777ae15e86f6893c0ae59aeaf40d46 /src/target/armv8.c
parentced4108d26de948b293cc2bbe51f64dca64795e2 (diff)
downloadriscv-openocd-f2a271e2643e8a57881d5db7aceb21fc36140bc2.zip
riscv-openocd-f2a271e2643e8a57881d5db7aceb21fc36140bc2.tar.gz
riscv-openocd-f2a271e2643e8a57881d5db7aceb21fc36140bc2.tar.bz2
aarch64: fix reading of MPIDR
read MPIDR register through correct MSR instruction. Change-Id: I7e2d00c2871191c4168b177a7a809443b0db4c82 Signed-off-by: Matthias Welwarsky <matthias.welwarsky@sysgo.com>
Diffstat (limited to 'src/target/armv8.c')
-rw-r--r--src/target/armv8.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/target/armv8.c b/src/target/armv8.c
index 902d290..e516518 100644
--- a/src/target/armv8.c
+++ b/src/target/armv8.c
@@ -33,6 +33,7 @@
#include <string.h>
#include <unistd.h>
+#include "armv8_opcodes.h"
#include "arm_opcodes.h"
#include "target.h"
#include "target_type.h"
@@ -351,7 +352,7 @@ static int armv8_read_mpidr(struct target *target)
/* MRC p15,0,<Rd>,c0,c0,5; read Multiprocessor ID register*/
retval = dpm->instr_read_data_r0(dpm,
- ARMV4_5_MRC(15, 0, 0, 0, 0, 5),
+ ARMV8_MRS(SYSTEM_MPIDR, 0),
&mpidr);
if (retval != ERROR_OK)
goto done;