diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/soc/amd/picasso/cpu.c | 8 | ||||
-rw-r--r-- | src/soc/amd/picasso/smi.c | 5 |
2 files changed, 7 insertions, 6 deletions
diff --git a/src/soc/amd/picasso/cpu.c b/src/soc/amd/picasso/cpu.c index 9460485b6b..8ee065d685 100644 --- a/src/soc/amd/picasso/cpu.c +++ b/src/soc/amd/picasso/cpu.c @@ -81,12 +81,18 @@ static void relocation_handler(int cpu, uintptr_t curr_smbase, smm_state->smbase = staggered_smbase; } +static void post_mp_init(void) +{ + global_smi_enable(); + apm_control(APM_CNT_SMMINFO); +} + static const struct mp_ops mp_ops = { .pre_mp_init = pre_mp_init, .get_cpu_count = get_cpu_count, .get_smm_info = get_smm_info, .relocation_handler = relocation_handler, - .post_mp_init = global_smi_enable, + .post_mp_init = post_mp_init, }; void mp_init_cpus(struct bus *cpu_bus) diff --git a/src/soc/amd/picasso/smi.c b/src/soc/amd/picasso/smi.c index 58221513a1..fb6d3484ad 100644 --- a/src/soc/amd/picasso/smi.c +++ b/src/soc/amd/picasso/smi.c @@ -4,8 +4,6 @@ * Utilities for SMM setup */ -#include <acpi/acpi.h> -#include <arch/io.h> #include <console/console.h> #include <cpu/x86/smm.h> #include <amdblocks/acpimmio.h> @@ -19,7 +17,4 @@ void global_smi_enable(void) reg &= ~SMITRG0_SMIENB; /* Enable SMI generation */ reg |= SMITRG0_EOS; /* Set EOS bit */ smi_write32(SMI_REG_SMITRIG0, reg); - - if (!acpi_is_wakeup_s3()) - outb(APM_CNT_SMMINFO, APM_CNT); } |