On 2/14/20 9:51 AM, Peter Maydell wrote: > diff --git a/target/arm/cpu.c b/target/arm/cpu.c > index c46bb5a5c09..9f618e120aa 100644 > --- a/target/arm/cpu.c > +++ b/target/arm/cpu.c > @@ -2718,6 +2718,7 @@ static void arm_max_initfn(Object *obj) > > t = cpu->isar.id_mmfr4; > t = FIELD_DP32(t, ID_MMFR4, HPDS, 1); /* AA32HPD */ > + t = FIELD_DP32(t, ID_MMFR4, AC2, 1); /* ACTLR2, HACTLR2 */ > cpu->isar.id_mmfr4 = t; > } > #endif > diff --git a/target/arm/cpu64.c b/target/arm/cpu64.c > index 8430d432943..32cf8ee98b0 100644 > --- a/target/arm/cpu64.c > +++ b/target/arm/cpu64.c > @@ -703,6 +703,10 @@ static void aarch64_max_initfn(Object *obj) > u = FIELD_DP32(u, ID_MMFR3, PAN, 2); /* ATS1E1 */ > cpu->isar.id_mmfr3 = u; > > + u = cpu->isar.id_mmfr4; > + u = FIELD_DP32(u, ID_MMFR4, AC2, 1); /* ACTLR2, HACTLR2 implemented > */ > + cpu->isar.id_mmfr4 = u;
This highlights a missing set of HPDS for cpu64 max. Saying "implemented" is somewhat redundant. Otherwise, Reviewed-by: Richard Henderson <richard.hender...@linaro.org> r~