[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v4 03/20] target/arm: Add isar_feature tests for PAN + ATS1E1
From: |
Peter Maydell |
Subject: |
Re: [PATCH v4 03/20] target/arm: Add isar_feature tests for PAN + ATS1E1 |
Date: |
Fri, 14 Feb 2020 16:20:34 +0000 |
On Fri, 14 Feb 2020 at 11:28, Peter Maydell <address@hidden> wrote:
>
> On Sat, 8 Feb 2020 at 12:58, Richard Henderson
> <address@hidden> wrote:
> >
> > Include definitions for all of the bits in ID_MMFR3.
> > We already have a definition for ID_AA64MMFR1.PAN.
> >
> > Reviewed-by: Alex Bennée <address@hidden>
> > Reviewed-by: Peter Maydell <address@hidden>
> > Signed-off-by: Richard Henderson <address@hidden>
>
>
> > @@ -3443,6 +3452,16 @@ static inline bool isar_feature_aa32_vminmaxnm(const
> > ARMISARegisters *id)
> > return FIELD_EX64(id->mvfr2, MVFR2, FPMISC) >= 4;
> > }
> >
> > +static inline bool isar_feature_aa32_pan(const ARMISARegisters *id)
> > +{
> > + return FIELD_EX64(id->mvfr0, ID_MMFR3, PAN) != 0;
> > +}
> > +
> > +static inline bool isar_feature_aa32_ats1e1(const ARMISARegisters *id)
> > +{
> > + return FIELD_EX64(id->mvfr0, ID_MMFR3, PAN) >= 2;
> > +}
>
> Didn't spot this before it hit master, but these feature
> test functions are looking at id->mvfr0, which is MVFR0, not
> MMFR3 !
>
> Also they're using FIELD_EX64 on a 32-bit register: is there
> a reason for that?
I've been fiddling with the ID register stuff anyway,
so I've written a patch that addresses these things.
Due out in v2 of my PMU patchset.
thanks
-- PMM
- [PATCH v4 00/20] target/arm: Implement PAN, ATS1E1, UAO, Richard Henderson, 2020/02/08
- [PATCH v4 01/20] target/arm: Add arm_mmu_idx_is_stage1_of_2, Richard Henderson, 2020/02/08
- [PATCH v4 03/20] target/arm: Add isar_feature tests for PAN + ATS1E1, Richard Henderson, 2020/02/08
- [PATCH v4 04/20] target/arm: Move LOR regdefs to file scope, Richard Henderson, 2020/02/08
- [PATCH v4 02/20] target/arm: Add mmu_idx for EL1 and EL2 w/ PAN enabled, Richard Henderson, 2020/02/08
- [PATCH v4 05/20] target/arm: Split out aarch32_cpsr_valid_mask, Richard Henderson, 2020/02/08
- [PATCH v4 06/20] target/arm: Mask CPSR_J when Jazelle is not enabled, Richard Henderson, 2020/02/08
- [PATCH v4 08/20] target/arm: Use aarch32_cpsr_valid_mask in helper_exception_return, Richard Henderson, 2020/02/08
- [PATCH v4 07/20] target/arm: Replace CPSR_ERET_MASK with aarch32_cpsr_valid_mask, Richard Henderson, 2020/02/08
- [PATCH v4 09/20] target/arm: Remove CPSR_RESERVED, Richard Henderson, 2020/02/08