arm-trusted-firmware/include/lib/extensions
Boyan Karatotev c73686a11c feat(pmu): introduce pmuv3 lib/extensions folder
The enablement code for the PMU is scattered and difficult to track
down. Factor out the feature into its own lib/extensions folder and
consolidate the implementation. Treat it is as an architecturally
mandatory feature as it is currently.

Additionally, do some cleanup on AArch64. Setting overflow bits in
PMCR_EL0 is irrelevant for firmware so don't do it. Then delay the PMU
initialisation until the context management stage which simplifies the
early environment assembly. One side effect is that the PMU might count
before this happens so reset all counters to 0 to prevent any leakage.

Finally, add an enable to manage_extensions_realm() as realm world uses
the pmu. This introduces the HPMN fixup to realm world.

Signed-off-by: Boyan Karatotev <boyan.karatotev@arm.com>
Change-Id: Ie13a8625820ecc5fbfa467dc6ca18025bf6a9cd3
2023-06-29 09:59:06 +01:00
..
amu.h refactor(amu): use new AMU feature check routines 2023-03-27 19:36:15 +01:00
brbe.h fix(cpufeat): make stub enable functions "static inline" 2023-03-22 13:33:22 +00:00
mpam.h fix(cpufeat): make stub enable functions "static inline" 2023-03-22 13:33:22 +00:00
pauth.h Refactor ARMv8.3 Pointer Authentication support code 2019-09-13 14:11:59 +01:00
pmuv3.h feat(pmu): introduce pmuv3 lib/extensions folder 2023-06-29 09:59:06 +01:00
ras_arch.h Tegra194: add RAS exception handling 2020-06-12 09:43:54 -07:00
ras.h Tegra194: add RAS exception handling 2020-06-12 09:43:54 -07:00
sme.h feat(cpufeat): enable FEAT_SME for FEAT_STATE_CHECKED 2023-03-28 17:19:07 +02:00
spe.h fix(cpufeat): make stub enable functions "static inline" 2023-03-22 13:33:22 +00:00
sve.h feat(cpufeat): enable FEAT_SVE for FEAT_STATE_CHECKED 2023-03-28 17:19:13 +02:00
sys_reg_trace.h refactor(cpufeat): enable SYS_REG_TRACE for FEAT_STATE_CHECKED 2023-03-22 13:33:22 +00:00
trbe.h fix(cpufeat): make stub enable functions "static inline" 2023-03-22 13:33:22 +00:00
trf.h fix(cpufeat): make stub enable functions "static inline" 2023-03-22 13:33:22 +00:00