audk/CorebootModulePkg
Benjamin You 271d8cd7df CorebootModulePkg/CbSupportDxe: Remove SCI_EN setting
Current implemenation sets PM1_CNT.SCI_EN bit at ReadyToBoot event.
However, this should not be done because this causes OS to skip triggering
FADT.SMI_CMD, which leads to the functions implemented in the SMI
handler being omitted.

This issue was identified by Matt Delco <delco@google.com>.

The fix does the following:
- The SCI_EN bit setting is removed from CbSupportDxe driver.
- Some additional checks are added in CbParseFadtInfo() in CbParseLib.c to
  output some error message and ASSERT (FALSE) if ALL of the following
  conditions are met:
  1) HARDWARE_REDUCED_ACPI is not set;
  2) SMI_CMD field is zero;
  3) SCI_EN bit is zero;
  which indicates the ACPI enabling status is inconsistent: SCI is not
  enabled but the ACPI table does not provide a means to enable it through
  FADT->SMI_CMD. This may cause issues in OS.

Cc: Maurice Ma <maurice.ma@intel.com>
Cc: Prince Agyeman <prince.agyeman@intel.com>
Cc: Matt Delco <delco@google.com>
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Benjamin You <benjamin.you@intel.com>
Reviewed-by: Maurice Ma <maurice.ma@intel.com>
Reviewed-by: Matt Delco <delco@google.com>
2018-06-11 16:16:30 +08:00
..
CbSupportDxe CorebootModulePkg/CbSupportDxe: Remove SCI_EN setting 2018-06-11 16:16:30 +08:00
CbSupportPei CorebootPayloadPkg/CbSupportPei: Fix the memory map issue 2016-11-17 14:49:11 -08:00
Include CorebootModulePkgPkg: Expose FindCbTag API from CbParseLib 2016-10-27 09:51:16 -07:00
Library CorebootModulePkg/CbSupportDxe: Remove SCI_EN setting 2018-06-11 16:16:30 +08:00
SataControllerDxe CorebootModulePkg: Remove DuetPkg references 2016-05-02 15:46:44 -07:00
SecCore CorebootModulePkg/SecCore: Adding NASM files in SecCore module 2016-08-03 17:20:17 -07:00
CorebootModulePkg.dec CorebootModulePkg: Use PCD for memory type information initialization 2016-05-18 16:30:18 -07:00