From d15183144a5eee46740b7b71eb29ef8011cba9be Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ky=C3=B6sti=20M=C3=A4lkki?= Date: Thu, 18 Jun 2020 13:51:31 +0300 Subject: cpu/x86/smm: Define APM_CNT_NOOP_SMI MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Old (!PARALLEL_MP) cpu bringup uses this as the first control to do SMM relocation. Change-Id: I4241120b00fac77f0491d37f05ba17763db1254e Signed-off-by: Kyösti Mälkki Reviewed-on: https://review.coreboot.org/c/coreboot/+/42617 Tested-by: build bot (Jenkins) Reviewed-by: Angel Pons --- src/include/cpu/x86/smm.h | 1 + src/soc/intel/broadwell/smi.c | 2 +- src/southbridge/intel/i82801dx/smi.c | 2 +- src/southbridge/intel/i82801ix/smi.c | 2 +- src/southbridge/intel/lynxpoint/smi.c | 2 +- 5 files changed, 5 insertions(+), 4 deletions(-) diff --git a/src/include/cpu/x86/smm.h b/src/include/cpu/x86/smm.h index ca834743b5..513b6df708 100644 --- a/src/include/cpu/x86/smm.h +++ b/src/include/cpu/x86/smm.h @@ -17,6 +17,7 @@ #define SMM_SAVE_STATE_BEGIN(x) (SMM_ENTRY_OFFSET + (x)) #define APM_CNT 0xb2 +#define APM_CNT_NOOP_SMI 0x00 #define APM_CNT_CST_CONTROL 0x85 #define APM_CNT_PST_CONTROL 0x80 #define APM_CNT_ACPI_DISABLE 0x1e diff --git a/src/soc/intel/broadwell/smi.c b/src/soc/intel/broadwell/smi.c index 939815a998..9d8d25e841 100644 --- a/src/soc/intel/broadwell/smi.c +++ b/src/soc/intel/broadwell/smi.c @@ -72,7 +72,7 @@ static void __unused southbridge_trigger_smi(void) /* raise an SMI interrupt */ printk(BIOS_SPEW, " ... raise SMI#\n"); - outb(0x00, 0xb2); + apm_control(APM_CNT_NOOP_SMI); } static void __unused southbridge_clear_smi_status(void) diff --git a/src/southbridge/intel/i82801dx/smi.c b/src/southbridge/intel/i82801dx/smi.c index fe4f864f4c..26bbbe143d 100644 --- a/src/southbridge/intel/i82801dx/smi.c +++ b/src/southbridge/intel/i82801dx/smi.c @@ -293,7 +293,7 @@ static void aseg_smm_relocate(void) /* raise an SMI interrupt */ printk(BIOS_SPEW, " ... raise SMI#\n"); - outb(0x00, 0xb2); + apm_control(APM_CNT_NOOP_SMI); } static void aseg_smm_install(void) diff --git a/src/southbridge/intel/i82801ix/smi.c b/src/southbridge/intel/i82801ix/smi.c index 2bbac886ce..4f47e34142 100644 --- a/src/southbridge/intel/i82801ix/smi.c +++ b/src/southbridge/intel/i82801ix/smi.c @@ -100,7 +100,7 @@ static void aseg_smm_relocate(void) /* raise an SMI interrupt */ printk(BIOS_SPEW, " ... raise SMI#\n"); - outb(0x00, 0xb2); + apm_control(APM_CNT_NOOP_SMI); } static int smm_handler_copied = 0; diff --git a/src/southbridge/intel/lynxpoint/smi.c b/src/southbridge/intel/lynxpoint/smi.c index df48d864d4..102ed24426 100644 --- a/src/southbridge/intel/lynxpoint/smi.c +++ b/src/southbridge/intel/lynxpoint/smi.c @@ -75,7 +75,7 @@ static void __unused southbridge_trigger_smi(void) /* raise an SMI interrupt */ printk(BIOS_SPEW, " ... raise SMI#\n"); - outb(0x00, 0xb2); + apm_control(APM_CNT_NOOP_SMI); } static void __unused southbridge_clear_smi_status(void) -- cgit v1.2.3