Message ID | 20200211173726.22541-12-peter.maydell@linaro.org |
---|---|
State | Superseded |
Headers | show |
Series | arm: Implement ARMv8.1-PMU and ARMv8.4-PMU | expand |
On 2/11/20 9:37 AM, Peter Maydell wrote: > Set the ID register bits to provide ARMv8.4-PMU (and implicitly > also ARMv8.1-PMU) in the 'max' CPU. > > Signed-off-by: Peter Maydell <peter.maydell@linaro.org> > --- > target/arm/cpu64.c | 8 ++++++++ > 1 file changed, 8 insertions(+) Reviewed-by: Richard Henderson <richard.henderson@linaro.org> r~
diff --git a/target/arm/cpu64.c b/target/arm/cpu64.c index 4b4b134ef84..5b8b7a9d4b8 100644 --- a/target/arm/cpu64.c +++ b/target/arm/cpu64.c @@ -693,6 +693,14 @@ static void aarch64_max_initfn(Object *obj) u = FIELD_DP32(u, ID_ISAR6, SPECRES, 1); cpu->isar.id_isar6 = u; + u = cpu->isar.id_aa64dfr0; + u = FIELD_DP32(u, ID_AA64DFR0, PMUVER, 5); /* v8.4-PMU */ + cpu->isar.id_aa64dfr0 = u; + + u = cpu->isar.id_dfr0; + u = FIELD_DP32(u, ID_DFR0, PERFMON, 5); /* v8.4-PMU */ + cpu->isar.id_dfr0 = u; + /* * FIXME: We do not yet support ARMv8.2-fp16 for AArch32 yet, * so do not set MVFR1.FPHP. Strictly speaking this is not legal,
Set the ID register bits to provide ARMv8.4-PMU (and implicitly also ARMv8.1-PMU) in the 'max' CPU. Signed-off-by: Peter Maydell <peter.maydell@linaro.org> --- target/arm/cpu64.c | 8 ++++++++ 1 file changed, 8 insertions(+) -- 2.20.1