diff --git a/src/cpu/x86/mp_init.c b/src/cpu/x86/mp_init.c index fa550f137a..44a29151b5 100644 --- a/src/cpu/x86/mp_init.c +++ b/src/cpu/x86/mp_init.c @@ -741,7 +741,7 @@ static void asmlinkage smm_do_relocation(void *arg) mseg = mp_state.perm_smbase + (mp_state.perm_smsize - CONFIG_MSEG_SIZE); - stm_setup(mseg, p->cpu, runtime->num_cpus, + stm_setup(mseg, p->cpu, perm_smbase, mp_state.perm_smbase, runtime->start32_offset); diff --git a/src/security/intel/stm/SmmStm.h b/src/security/intel/stm/SmmStm.h index 4f72816cae..169025553a 100644 --- a/src/security/intel/stm/SmmStm.h +++ b/src/security/intel/stm/SmmStm.h @@ -28,7 +28,7 @@ int load_stm_image(uintptr_t mseg); void stm_setup( - uintptr_t mseg, int cpu, int num_cpus, uintptr_t smbase, + uintptr_t mseg, int cpu, uintptr_t smbase, uintptr_t smbase_base, uint32_t offset32); /* diff --git a/src/security/intel/stm/StmPlatformSmm.c b/src/security/intel/stm/StmPlatformSmm.c index 248ccc028a..b9d2686f35 100644 --- a/src/security/intel/stm/StmPlatformSmm.c +++ b/src/security/intel/stm/StmPlatformSmm.c @@ -154,7 +154,7 @@ extern uint8_t *stm_resource_heap; static int stm_load_status = 0; -void stm_setup(uintptr_t mseg, int cpu, int num_cpus, uintptr_t smbase, +void stm_setup(uintptr_t mseg, int cpu, uintptr_t smbase, uintptr_t base_smbase, uint32_t offset32) { msr_t InitMseg; @@ -163,7 +163,7 @@ void stm_setup(uintptr_t mseg, int cpu, int num_cpus, uintptr_t smbase, uintptr_t addr_calc; // used to calculate the stm resource heap area - printk(BIOS_DEBUG, "STM: set up for cpu %d/%d\n", cpu, num_cpus); + printk(BIOS_DEBUG, "STM: set up for cpu %d\n", cpu); vmx_basic = rdmsr(IA32_VMX_BASIC_MSR);