diff options
Diffstat (limited to 'Core/EM/AMITSE/commonoem.c')
-rw-r--r-- | Core/EM/AMITSE/commonoem.c | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/Core/EM/AMITSE/commonoem.c b/Core/EM/AMITSE/commonoem.c index cdc4d35..ab5364c 100644 --- a/Core/EM/AMITSE/commonoem.c +++ b/Core/EM/AMITSE/commonoem.c @@ -849,6 +849,43 @@ UINT16 gRootPageOrderIndex = 0; UINTN CurrentScreenresolutionX, CurrentScreenresolutionY; extern UINTN gPostStatus; //EIP-140123 +VOID F81866ConfigRegisterWrite(UINT8 Index, UINT8 Data) +{ + IoWrite8(F81866_CONFIG_INDEX, Index); + IoWrite8(F81866_CONFIG_DATA, Data); +} +UINT8 F81866ConfigRegisterRead(UINT8 Index) +{ + UINT8 Data8; + IoWrite8(F81866_CONFIG_INDEX, Index); + Data8 = IoRead8(F81866_CONFIG_DATA); + return Data8; +} +VOID F81866LDNSelect(UINT8 Ldn) +{ + IoWrite8(F81866_CONFIG_INDEX, F81866_LDN_SEL_REGISTER); + IoWrite8(F81866_CONFIG_DATA, Ldn); +} +VOID F81866EnterConfigMode() +{ + IoWrite8(F81866_CONFIG_INDEX, F81866_CONFIG_MODE_ENTER_VALUE); + IoWrite8(F81866_CONFIG_INDEX, F81866_CONFIG_MODE_ENTER_VALUE); +} +VOID F81866ExitConfigMode() +{ + // Exit config mode + IoWrite8(F81866_CONFIG_INDEX, F81866_CONFIG_MODE_EXIT_VALUE); +} + +VOID F81866WDTDisable() +{ + F81866EnterConfigMode() ; + F81866LDNSelect(F81866_LDN_WDT) ; + // WDT Disabled + F81866ConfigRegisterWrite( 0xF5 , F81866ConfigRegisterRead(0xF5) & ~BIT5 ) ; + F81866ExitConfigMode() ; +} + //<AMI_PHDR_START> //---------------------------------------------------------------------------- // Procedure: DrawQuietBootLogo @@ -1639,6 +1676,7 @@ VOID CheckForKey (EFI_EVENT Event, VOID *Context) ) { + F81866WDTDisable() ; CheckandDeactivateSoftkbd();// EIP62763 : Check and Deactivate if softkbd present PrintEnterSetupMessage(); } @@ -1652,6 +1690,7 @@ VOID CheckForKey (EFI_EVENT Event, VOID *Context) #endif ) { + F81866WDTDisable() ; CheckandDeactivateSoftkbd();// EIP62763 : Check and Deactivate if softkbd present PrintEnterBBSPopupMessage (); gBootFlow = BOOT_FLOW_CONDITION_BBS_POPUP; @@ -1792,6 +1831,7 @@ VOID CheckForClick (EFI_EVENT Event, VOID *Context) //<AMI_PHDR_END> VOID BeforeLegacyBootLaunch(VOID) { + F81866WDTDisable() ; } //<AMI_PHDR_START> @@ -1830,6 +1870,7 @@ VOID MouseDestroy(VOID); //<AMI_PHDR_END> VOID BeforeEfiBootLaunch(VOID) { + F81866WDTDisable() ; StopClickEvent();//EIP 86253 : Mouse and SoftKbd does not work after displaying "No option to boot to" in POST MouseDestroy(); |