Armv8.1+ cpus have Virtual Host Extension (VHE) which added non-secure
EL2 virtual timer.

This change adds it into GTDT to fullfil Arm BSA (Base System
Architecture) requirements.

Signed-off-by: Marcin Juszkiewicz <marcin.juszkiew...@linaro.org>
---
 Platform/Qemu/SbsaQemu/SbsaQemu.dsc             | 2 ++
 Silicon/Qemu/SbsaQemu/AcpiTables/AcpiTables.inf | 1 +
 Silicon/Qemu/SbsaQemu/AcpiTables/Gtdt.aslc      | 4 ++--
 3 files changed, 5 insertions(+), 2 deletions(-)

diff --git a/Platform/Qemu/SbsaQemu/SbsaQemu.dsc 
b/Platform/Qemu/SbsaQemu/SbsaQemu.dsc
index be406144c242..8bea9793451a 100644
--- a/Platform/Qemu/SbsaQemu/SbsaQemu.dsc
+++ b/Platform/Qemu/SbsaQemu/SbsaQemu.dsc
@@ -447,6 +447,8 @@ [PcdsFixedAtBuild.common]
   gArmTokenSpaceGuid.PcdArmArchTimerVirtIntrNum|27
   # PPI #10
   gArmTokenSpaceGuid.PcdArmArchTimerHypIntrNum|26
+  # PPI #12
+  gArmTokenSpaceGuid.PcdArmArchTimerHypVirtIntrNum|28
 
   ## PL031 RealTimeClock
   gArmPlatformTokenSpaceGuid.PcdPL031RtcBase|0x60010000
diff --git a/Silicon/Qemu/SbsaQemu/AcpiTables/AcpiTables.inf 
b/Silicon/Qemu/SbsaQemu/AcpiTables/AcpiTables.inf
index 97021f7971c7..343c75f0b4ec 100644
--- a/Silicon/Qemu/SbsaQemu/AcpiTables/AcpiTables.inf
+++ b/Silicon/Qemu/SbsaQemu/AcpiTables/AcpiTables.inf
@@ -36,6 +36,7 @@ [FixedPcd]
   gArmTokenSpaceGuid.PcdArmArchTimerIntrNum
   gArmTokenSpaceGuid.PcdArmArchTimerHypIntrNum
   gArmTokenSpaceGuid.PcdArmArchTimerVirtIntrNum
+  gArmTokenSpaceGuid.PcdArmArchTimerHypVirtIntrNum
 
   gEfiMdeModulePkgTokenSpaceGuid.PcdAcpiDefaultCreatorId
   gEfiMdeModulePkgTokenSpaceGuid.PcdAcpiDefaultCreatorRevision
diff --git a/Silicon/Qemu/SbsaQemu/AcpiTables/Gtdt.aslc 
b/Silicon/Qemu/SbsaQemu/AcpiTables/Gtdt.aslc
index ba145aff6413..b5e8f8405d61 100644
--- a/Silicon/Qemu/SbsaQemu/AcpiTables/Gtdt.aslc
+++ b/Silicon/Qemu/SbsaQemu/AcpiTables/Gtdt.aslc
@@ -91,8 +91,8 @@
       SBSA_PLATFORM_TIMER_COUNT,                    // UINT32  
PlatformTimerCount
       sizeof(EFI_ACPI_6_3_GENERIC_TIMER_DESCRIPTION_TABLE),
                                                     // UINT32  
PlatformTimerOffset
-      0,                                            // UINT32  
VirtualPL2TimerGSIV
-      0                                             // UINT32  
VirtualPL2TimerFlags
+      FixedPcdGet32 (PcdArmArchTimerHypVirtIntrNum),// UINT32  
VirtualPL2TimerGSIV
+      GTDT_GTIMER_FLAGS                             // UINT32  
VirtualPL2TimerFlags
     },
     EFI_ACPI_6_3_SBSA_GENERIC_WATCHDOG_STRUCTURE_INIT(
     SBSAQEMU_WDT_REFRESH_FRAME_BASE,
-- 
2.41.0



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#108902): https://edk2.groups.io/g/devel/message/108902
Mute This Topic: https://groups.io/mt/101474460/21656
Group Owner: devel+ow...@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-


Reply via email to