The ArmVExpressSysConfigLib library does not (and cannot) runtime
remap its MMIO registers, so return RETURN_UNSUPPORTED when trying
to use it after calling SetVirtualAddressMap().

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ard Biesheuvel <ard.biesheu...@linaro.org>
---
 .../Library/ArmVExpressSysConfigLib/ArmVExpressSysConfig.c          | 6 ++++++
 .../Library/ArmVExpressSysConfigLib/ArmVExpressSysConfigLib.inf     | 1 +
 2 files changed, 7 insertions(+)

diff --git 
a/ArmPlatformPkg/ArmVExpressPkg/Library/ArmVExpressSysConfigLib/ArmVExpressSysConfig.c
 
b/ArmPlatformPkg/ArmVExpressPkg/Library/ArmVExpressSysConfigLib/ArmVExpressSysConfig.c
index 6dfbacd11762..87ecb63c6c23 100644
--- 
a/ArmPlatformPkg/ArmVExpressPkg/Library/ArmVExpressSysConfigLib/ArmVExpressSysConfig.c
+++ 
b/ArmPlatformPkg/ArmVExpressPkg/Library/ArmVExpressSysConfigLib/ArmVExpressSysConfig.c
@@ -13,8 +13,10 @@
 **/
 
 #include <Base.h>
+#include <Uefi.h>
 #include <Library/IoLib.h>
 #include <Library/DebugLib.h>
+#include <Library/UefiRuntimeLib.h>
 
 #include <Library/ArmPlatformSysConfigLib.h>
 #include <ArmPlatform.h>
@@ -72,6 +74,10 @@ AccessSysCfgRegister (
 {
   UINT32          SysCfgCtrl;
 
+  if (EfiGoneVirtual ()) {
+    return RETURN_UNSUPPORTED;
+  }
+
   // Clear the COMPLETE bit
   MmioAnd32(ARM_VE_SYS_CFGSTAT_REG, ~SYS_CFGSTAT_COMPLETE);
 
diff --git 
a/ArmPlatformPkg/ArmVExpressPkg/Library/ArmVExpressSysConfigLib/ArmVExpressSysConfigLib.inf
 
b/ArmPlatformPkg/ArmVExpressPkg/Library/ArmVExpressSysConfigLib/ArmVExpressSysConfigLib.inf
index c1647756efbe..268202cc2038 100644
--- 
a/ArmPlatformPkg/ArmVExpressPkg/Library/ArmVExpressSysConfigLib/ArmVExpressSysConfigLib.inf
+++ 
b/ArmPlatformPkg/ArmVExpressPkg/Library/ArmVExpressSysConfigLib/ArmVExpressSysConfigLib.inf
@@ -33,3 +33,4 @@
 [LibraryClasses]
   BaseLib
   IoLib
+  UefiRuntimeLib
-- 
1.9.1


------------------------------------------------------------------------------
One dashboard for servers and applications across Physical-Virtual-Cloud 
Widest out-of-the-box monitoring support with 50+ applications
Performance metrics, stats and reports that give you Actionable Insights
Deep dive visibility with transaction tracing using APM Insight.
http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/edk2-devel

Reply via email to