diff options
| author | Boyan Karatotev <boyan.karatotev@arm.com> | 2026-02-04 08:52:10 +0000 |
|---|---|---|
| committer | Boyan Karatotev <boyan.karatotev@arm.com> | 2026-02-27 15:03:59 +0000 |
| commit | bef48492271e195e6c8267ff7b9c0af0cf807d93 (patch) | |
| tree | f0bf39e5e75770b7154b32df49f4643a82c3dae6 /common | |
| parent | 59cc811b442900756c7bcc94dd58c5217eda1002 (diff) | |
| download | arm-trusted-firmware-bef48492271e195e6c8267ff7b9c0af0cf807d93.tar.gz arm-trusted-firmware-bef48492271e195e6c8267ff7b9c0af0cf807d93.zip | |
feat(cpufeat): bump FEATURE_DETECTION features up to 9.5
FEAT_LSE has a new revision FEAT_LSE128 which requires no support but we
tolerate. FEAT_MTPMU has the 0b1111 variant that was never checked but
is perfectly valid from the point of view of the flag - the MTPMU is
disabled even though the feature isn't implemented.
Change-Id: I0a89eb5ade96e42bfeeb50cc54fad84ab5d60415
Signed-off-by: Boyan Karatotev <boyan.karatotev@arm.com>
Diffstat (limited to 'common')
| -rw-r--r-- | common/feat_detect.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/common/feat_detect.c b/common/feat_detect.c index 8d58d6898..9ecda02e6 100644 --- a/common/feat_detect.c +++ b/common/feat_detect.c @@ -407,7 +407,7 @@ void detect_arch_features(unsigned int core_pos) "PMUv3", 1, ID_AA64DFR0_PMUVER_PMUV3P9); tainted |= check_feature(USE_SPINLOCK_CAS, read_feat_lse_id_field(), - "LSE", 2, 2); + "LSE", 2, 3); /* v8.1 features */ tainted |= check_feature(ENABLE_FEAT_PAN, read_feat_pan_id_field(), @@ -472,7 +472,10 @@ void detect_arch_features(unsigned int core_pos) * feature when we intend to diverge from the default behaviour */ tainted |= check_feature(DISABLE_MTPMU, read_feat_mtpmu_id_field(), - "MTPMU", 1, 1); + "MTPMU", 1, 15); + if (read_feat_mtpmu_id_field() == 15) { + WARN("DISABLE_MTPMU is implemented in hardware, flag is redundant.\n"); + } /* v8.7 features */ tainted |= check_feature(ENABLE_FEAT_HCX, read_feat_hcx_id_field(), |
