Currently, each ARM platform built with RVCT that uses ArmHvcLib or ArmSmcLib needs to specify a CPU target that implements both the security and virtualization extensions, so that the assembler does not choke on the 'hvc' and 'smc' instructions in ArmHvcLib/ArmSvcLib. Let's move these overrides into the module .INFs so we can lift this requirement at the platform side.
Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Ard Biesheuvel <ard.biesheu...@linaro.org> --- ArmPkg/ArmPkg.dsc | 2 -- ArmPkg/Library/ArmHvcLib/ArmHvcLib.inf | 3 +++ ArmPkg/Library/ArmSmcLib/ArmSmcLib.inf | 3 +++ 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/ArmPkg/ArmPkg.dsc b/ArmPkg/ArmPkg.dsc index 382e99868453..622720ab2aef 100644 --- a/ArmPkg/ArmPkg.dsc +++ b/ArmPkg/ArmPkg.dsc @@ -33,8 +33,6 @@ [Defines] [BuildOptions] XCODE:*_*_ARM_PLATFORM_FLAGS == -arch armv7 GCC:*_*_ARM_PLATFORM_FLAGS == -march=armv7-a -mfpu=neon - # We use A15 to get the Secure and Virtualization extensions - RVCT:*_*_ARM_PLATFORM_FLAGS == --cpu Cortex-A15 RELEASE_*_*_CC_FLAGS = -DMDEPKG_NDEBUG *_*_*_CC_FLAGS = -DDISABLE_NEW_DEPRECATED_INTERFACES diff --git a/ArmPkg/Library/ArmHvcLib/ArmHvcLib.inf b/ArmPkg/Library/ArmHvcLib/ArmHvcLib.inf index 92efac5741c8..d046ef3ba253 100644 --- a/ArmPkg/Library/ArmHvcLib/ArmHvcLib.inf +++ b/ArmPkg/Library/ArmHvcLib/ArmHvcLib.inf @@ -30,3 +30,6 @@ [Sources.AARCH64] [Packages] MdePkg/MdePkg.dec ArmPkg/ArmPkg.dec + +[BuildOptions] + RVCT:*_*_ARM_PLATFORM_FLAGS == --cpu Cortex-A15 diff --git a/ArmPkg/Library/ArmSmcLib/ArmSmcLib.inf b/ArmPkg/Library/ArmSmcLib/ArmSmcLib.inf index 9f9ba729967c..0aa64d467129 100644 --- a/ArmPkg/Library/ArmSmcLib/ArmSmcLib.inf +++ b/ArmPkg/Library/ArmSmcLib/ArmSmcLib.inf @@ -29,3 +29,6 @@ [Sources.AARCH64] [Packages] MdePkg/MdePkg.dec ArmPkg/ArmPkg.dec + +[BuildOptions] + RVCT:*_*_ARM_PLATFORM_FLAGS == --cpu Cortex-A15 -- 2.11.0 _______________________________________________ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel