From 20038fb801e2364165a8c6fa936d2747200b27b0 Mon Sep 17 00:00:00 2001 From: Lioncash Date: Fri, 2 Feb 2018 08:28:22 -0500 Subject: [PATCH] Backport the PMU feature flag Backports the applicable code from commit 929e754d5a621cd53f30e69b766ccf381b58d124 to unicorn --- qemu/target-arm/cpu.h | 1 + qemu/target-arm/cpu64.c | 1 + 2 files changed, 2 insertions(+) diff --git a/qemu/target-arm/cpu.h b/qemu/target-arm/cpu.h index c17c011c..70b73079 100644 --- a/qemu/target-arm/cpu.h +++ b/qemu/target-arm/cpu.h @@ -750,6 +750,7 @@ enum arm_features { ARM_FEATURE_V8_SHA256, /* implements SHA256 part of v8 Crypto Extensions */ ARM_FEATURE_V8_PMULL, /* implements PMULL part of v8 Crypto Extensions */ ARM_FEATURE_THUMB_DSP, /* DSP insns supported in the Thumb encodings */ + ARM_FEATURE_PMU, /* has PMU support */ ARM_FEATURE_VBAR, /* has cp15 VBAR */ ARM_FEATURE_V8_SHA3, /* implements SHA3 part of v8 Crypto Extensions */ }; diff --git a/qemu/target-arm/cpu64.c b/qemu/target-arm/cpu64.c index 05d67a7b..c7426e00 100644 --- a/qemu/target-arm/cpu64.c +++ b/qemu/target-arm/cpu64.c @@ -85,6 +85,7 @@ static void aarch64_a57_initfn(struct uc_struct *uc, Object *obj, void *opaque) set_feature(&cpu->env, ARM_FEATURE_V8_SHA256); set_feature(&cpu->env, ARM_FEATURE_V8_PMULL); set_feature(&cpu->env, ARM_FEATURE_CRC); + set_feature(&cpu->env, ARM_FEATURE_PMU); cpu->kvm_target = QEMU_KVM_ARM_TARGET_CORTEX_A57; cpu->midr = 0x411fd070; cpu->reset_fpsid = 0x41034070;