diff options
author | Jincheng Li <jincheng.li@intel.com> | 2024-08-12 12:27:49 +0800 |
---|---|---|
committer | Lean Sheng Tan <sheng.tan@9elements.com> | 2024-09-24 11:14:20 +0000 |
commit | 1b5e3a27075560d2d4265ece43e855fe43cfe395 (patch) | |
tree | 4014f3fd52f6ba994fbbaaf249814dbdc12bd49e /src/soc/intel/xeon_sp/gnr | |
parent | 909da87a09bec9e5b6d2f4ca5d8964a93e7056b0 (diff) |
soc/intel/xeon_sp/gnr: Implement SMM methods
Change-Id: I578b2c213ff1b33b4ca37e0422f690bedc9f5ba1
Signed-off-by: Jincheng Li <jincheng.li@intel.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84325
Reviewed-by: Arthur Heymans <arthur@aheymans.xyz>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Diffstat (limited to 'src/soc/intel/xeon_sp/gnr')
-rw-r--r-- | src/soc/intel/xeon_sp/gnr/cpu.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/soc/intel/xeon_sp/gnr/cpu.c b/src/soc/intel/xeon_sp/gnr/cpu.c index 9502865926..ebccb0814d 100644 --- a/src/soc/intel/xeon_sp/gnr/cpu.c +++ b/src/soc/intel/xeon_sp/gnr/cpu.c @@ -2,10 +2,12 @@ #include <cpu/intel/common/common.h> #include <cpu/intel/microcode.h> +#include <cpu/intel/smm_reloc.h> #include <cpu/x86/mp.h> #include <cpu/x86/mtrr.h> #include <intelblocks/cpulib.h> #include <intelblocks/mp_init.h> +#include <soc/smmrelocate.h> #include <soc/soc_util.h> #include <soc/util.h> @@ -84,6 +86,11 @@ static void post_mp_init(void) static const struct mp_ops mp_ops = { .pre_mp_init = pre_mp_init, .get_cpu_count = get_thread_count, +#if CONFIG(HAVE_SMI_HANDLER) + .get_smm_info = get_smm_info, + .pre_mp_smm_init = smm_southbridge_clear_state, + .relocation_handler = smm_relocation_handler, +#endif .get_microcode_info = get_microcode_info, .post_mp_init = post_mp_init, }; |