diff options
author | Guo Mang <mang.guo@intel.com> | 2017-04-14 12:54:43 +0800 |
---|---|---|
committer | Guo Mang <mang.guo@intel.com> | 2017-04-25 14:25:04 +0800 |
commit | 721ec5a53d017b7ef2bd34d3a5e3389a07cdf544 (patch) | |
tree | 5fbdebcf5d264c64591bf41d1bc67d0834e88bad | |
parent | be725b87f6011fbe8d7e0442e8f9eec9e478c24a (diff) | |
download | edk2-platforms-721ec5a53d017b7ef2bd34d3a5e3389a07cdf544.tar.xz |
Fix issue in PlatformSMM
Change code to set R_SMI_EN earlier in S3 boot path to make sure all SMI were detected.
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Guo Mang <mang.guo@intel.com>
Reviewed-by: zwei4 <david.wei@intel.com>
-rw-r--r-- | Platform/BroxtonPlatformPkg/Common/PlatformSmm/Platform.c | 13 | ||||
-rw-r--r-- | Platform/BroxtonPlatformPkg/Common/PlatformSmm/S3Save.c | 11 |
2 files changed, 13 insertions, 11 deletions
diff --git a/Platform/BroxtonPlatformPkg/Common/PlatformSmm/Platform.c b/Platform/BroxtonPlatformPkg/Common/PlatformSmm/Platform.c index 673df3aedd..e0c6c7138f 100644 --- a/Platform/BroxtonPlatformPkg/Common/PlatformSmm/Platform.c +++ b/Platform/BroxtonPlatformPkg/Common/PlatformSmm/Platform.c @@ -1,7 +1,7 @@ /** @file
This is a generic template for a child of the IchSmm driver.
- Copyright (c) 1999 - 2016, Intel Corporation. All rights reserved.<BR>
+ Copyright (c) 1999 - 2017, Intel Corporation. All rights reserved.<BR>
This program and the accompanying materials
are licensed and made available under the terms and conditions of the BSD License
@@ -142,6 +142,7 @@ InitializePlatformSmm ( EFI_SMM_SW_REGISTER_CONTEXT SwContext;
UINTN VarSize;
EFI_BOOT_MODE BootMode;
+ UINT32 Data32;
Handle = NULL;
//
@@ -315,6 +316,16 @@ InitializePlatformSmm ( ASSERT_EFI_ERROR (Status);
+
+ Data32 = IoRead32 (mAcpiBaseAddr + R_SMI_EN);
+ S3BootScriptSaveIoWrite (
+ S3BootScriptWidthUint32,
+ (mAcpiBaseAddr + R_SMI_EN),
+ 1,
+ &Data32
+ );
+
+
//
// Get the ICHn protocol
//
diff --git a/Platform/BroxtonPlatformPkg/Common/PlatformSmm/S3Save.c b/Platform/BroxtonPlatformPkg/Common/PlatformSmm/S3Save.c index 4b3f34fc3f..00b25f5525 100644 --- a/Platform/BroxtonPlatformPkg/Common/PlatformSmm/S3Save.c +++ b/Platform/BroxtonPlatformPkg/Common/PlatformSmm/S3Save.c @@ -1,7 +1,7 @@ /** @file
SMM S3 handler Driver implementation file.
- Copyright (c) 1999 - 2016, Intel Corporation. All rights reserved.<BR>
+ Copyright (c) 1999 - 2017, Intel Corporation. All rights reserved.<BR>
This program and the accompanying materials
are licensed and made available under the terms and conditions of the BSD License
@@ -22,7 +22,6 @@ SaveRuntimeScriptTable ( IN EFI_SMM_SYSTEM_TABLE2 *Smst
)
{
- UINT32 Data32;
UINT16 Data16;
UINT8 Data8;
UINT32 DwordData;
@@ -58,14 +57,6 @@ SaveRuntimeScriptTable ( &Data8
);
- Data32 = IoRead32 (mAcpiBaseAddr + R_SMI_EN);
- S3BootScriptSaveIoWrite (
- S3BootScriptWidthUint32,
- (mAcpiBaseAddr + R_SMI_EN),
- 1,
- &Data32
- );
-
//
// Save B_ICH_TCO_CNT_LOCK so it will be done on S3 resume path.
//
|