aarch64: fix reading of MPIDR

read MPIDR register through correct MSR instruction.

Change-Id: I7e2d00c2871191c4168b177a7a809443b0db4c82
Signed-off-by: Matthias Welwarsky <matthias.welwarsky@sysgo.com>
This commit is contained in:
Matthias Welwarsky 2016-09-03 16:35:59 +02:00
parent ced4108d26
commit f2a271e264

View File

@ -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;