ARMv7 may not support Virtualization Extensions
ARMv7-A Virtualization extensions brings new instructions and resources
that were supported by later architectures. Reference ARM ARM Issue C.c
[DDI0406C_C].

ERET and extended MSR/MRS instructions, as specified in [DDI0406C_C] in
ID_PFR1 description of bits[15:12] (Virtualization Extensions):
 A value of 0b0001 implies implementation of the HVC, ERET, MRS
 (Banked register), and MSR (Banked register) instructions. The ID_ISARs
 do not identify whether these instructions are implemented.

UDIV/SDIV were introduced with the Virtualization extensions, even if
not strictly related to the virtualization extensions.

If ARMv7 based platform does not set ARM_CORTEX_Ax=yes, platform
shall define ARMV7_SUPPORTS_VIRTUALIZATION to enable virtualization
extension related resources.

Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org>
1 parent 51b992e commit 64cc6e91e819ccbf5fe3bf8a5c177b8fa8012d8c
@Etienne Carriere Etienne Carriere authored on 8 Nov 2017
Showing 4 changed files
View
common/aarch32/debug.S
View
include/common/aarch32/asm_macros.S
View
include/lib/aarch32/smcc_macros.S
View
make_helpers/armv7-a-cpus.mk