From 3512efa9b2b63b3bec6277cf4c878eb7e54f92ef Mon Sep 17 00:00:00 2001 From: li-elvin Date: Tue, 15 Nov 2011 07:59:21 +0000 Subject: [PATCH] CSM is updated to remove RaiseTPL (TPL_HIGH_LEVEL) and disable 2 known UEFI interrupts instead. This is needed to process HPET timer interrupt before going into real mode. Signed-off-by: li-elvin Reviewed-by: vanjeff git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12701 6f19259b-4bc3-4df7-8a09-765794883524 --- .../Csm/LegacyBiosDxe/LegacyBootSupport.c | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/IntelFrameworkModulePkg/Csm/LegacyBiosDxe/LegacyBootSupport.c b/IntelFrameworkModulePkg/Csm/LegacyBiosDxe/LegacyBootSupport.c index 397295bcf1..04013d9708 100644 --- a/IntelFrameworkModulePkg/Csm/LegacyBiosDxe/LegacyBootSupport.c +++ b/IntelFrameworkModulePkg/Csm/LegacyBiosDxe/LegacyBootSupport.c @@ -1204,10 +1204,17 @@ GenericLegacyBoot ( // EfiSignalEventLegacyBoot (); DEBUG ((EFI_D_INFO, "Legacy INT19 Boot...\n")); + // - // Raise TPL to high level to disable CPU interrupts + // Disable DXE Timer while executing in real mode // - gBS->RaiseTPL (TPL_HIGH_LEVEL); + Private->Timer->SetTimerPeriod (Private->Timer, 0); + + // + // Save and disable interrupt of debug timer + // + SaveAndSetDebugTimerInterrupt (FALSE); + // // Put the 8259 into its legacy mode by reprogramming the vector bases