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
This commit is contained in:
li-elvin 2011-11-15 07:59:21 +00:00
parent 22fde64e92
commit 3512efa9b2
1 changed files with 9 additions and 2 deletions

View File

@ -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