]> git.baikalelectronics.ru Git - arm-tf.git/commit
refactor(cpufeat): enable SYS_REG_TRACE for FEAT_STATE_CHECKED
authorAndre Przywara <andre.przywara@arm.com>
Thu, 17 Nov 2022 16:42:09 +0000 (16:42 +0000)
committerAndre Przywara <andre.przywara@arm.com>
Wed, 22 Mar 2023 13:33:22 +0000 (13:33 +0000)
commit603a0c6faef4194bd58fd2104971e4100648ed1c
treeac38eac04820a0536508f35f615f68ff2ad92f71
parentd7f3ed3655b85223583d8c2d9e719f364266ef26
refactor(cpufeat): enable SYS_REG_TRACE for FEAT_STATE_CHECKED

At the moment we only support access to the trace unit by system
registers (SYS_REG_TRACE) to be either unconditionally compiled in, or
to be not supported at all.

Add support for runtime detection (ENABLE_SYS_REG_TRACE_FOR_NS=2), by
adding is_feat_sys_reg_trace_supported(). That function considers both
build time settings and runtime information (if needed), and is used
before we access SYS_REG_TRACE related registers.

The FVP platform decided to compile in support unconditionally (=1),
even though this is an optional feature, so it is not available with the
FVP model's default command line.
Change that to the now supported dynamic option (=2), so the right
decision can be made by the code at runtime.

Change-Id: I450a574a4f6bd9fc269887037049c94c906f54b2
Signed-off-by: Andre Przywara <andre.przywara@arm.com>
12 files changed:
Makefile
bl31/bl31.mk
bl32/sp_min/sp_min.mk
docs/getting_started/build-options.rst
include/arch/aarch32/arch_features.h
include/arch/aarch64/arch_features.h
include/lib/extensions/sys_reg_trace.h
lib/el3_runtime/aarch32/context_mgmt.c
lib/el3_runtime/aarch64/context_mgmt.c
lib/extensions/sys_reg_trace/aarch32/sys_reg_trace.c
lib/extensions/sys_reg_trace/aarch64/sys_reg_trace.c
plat/arm/board/fvp/platform.mk