gEfiLegacyInterruptProtocolGuid # PROTOCOL ALWAYS_CONSUMED\r
gEfiLegacyRegion2ProtocolGuid # PROTOCOL ALWAYS_CONSUMED\r
gEfiLegacyBiosProtocolGuid # PROTOCOL ALWAYS_PRODUCED\r
- gEfiTimerArchProtocolGuid # PROTOCOL ALWAYS_PRODUCED\r
\r
[Pcd]\r
gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdLegacyBiosCacheLegacyRegion\r
#include <Protocol/DevicePath.h>\r
#include <Protocol/Legacy8259.h>\r
#include <Protocol/PciRootBridgeIo.h>\r
-#include <Protocol/Timer.h>\r
\r
#include <Library/BaseLib.h>\r
#include <Library/DebugLib.h>\r
#include <Library/DebugAgentLib.h>\r
\r
//\r
-// System Tickers\r
-//\r
-#define DEFAULT_LAGACY_TIMER_TICK_DURATION 549254\r
// BUGBUG: This entry maybe changed to PCD in future and wait for\r
// redesign of BDS library\r
//\r
VOID *AcpiTable;\r
UINTN ShadowAddress;\r
UINT32 Granularity;\r
- EFI_TIMER_ARCH_PROTOCOL *Timer;\r
- UINT64 TimerPeriod;\r
\r
LocalHddInfo = NULL;\r
HddCount = 0;\r
BbsCount = 0;\r
LocalBbsTable = NULL;\r
- TimerPeriod = 0;\r
\r
Private = LEGACY_BIOS_INSTANCE_FROM_THIS (This);\r
DEBUG_CODE (\r
\r
EfiToLegacy16BootTable->MajorVersion = EFI_TO_LEGACY_MAJOR_VERSION;\r
EfiToLegacy16BootTable->MinorVersion = EFI_TO_LEGACY_MINOR_VERSION;\r
-\r
- //\r
- // Before starting the Legacy boot check the system ticker.\r
- //\r
- Status = gBS->LocateProtocol (\r
- &gEfiTimerArchProtocolGuid, \r
- NULL,\r
- (VOID **) &Timer\r
- );\r
- if (EFI_ERROR (Status)) {\r
- return Status;\r
- }\r
-\r
- Status = Timer->GetTimerPeriod (\r
- Timer,\r
- &TimerPeriod\r
- );\r
- if (EFI_ERROR (Status)) {\r
- return Status;\r
- }\r
-\r
- if (TimerPeriod != DEFAULT_LAGACY_TIMER_TICK_DURATION) {\r
- Status = Timer->SetTimerPeriod (\r
- Timer, \r
- DEFAULT_LAGACY_TIMER_TICK_DURATION\r
- );\r
- if (EFI_ERROR (Status)) {\r
- return Status;\r
- }\r
- }\r
\r
//\r
// If booting to a legacy OS then force HDD drives to the appropriate\r