diff options
Diffstat (limited to 'src/include/cpu/x86/smm.h')
-rw-r--r-- | src/include/cpu/x86/smm.h | 11 |
1 files changed, 4 insertions, 7 deletions
diff --git a/src/include/cpu/x86/smm.h b/src/include/cpu/x86/smm.h index 848996f845..37247ece49 100644 --- a/src/include/cpu/x86/smm.h +++ b/src/include/cpu/x86/smm.h @@ -120,9 +120,6 @@ static inline bool smm_points_to_smram(const void *ptr, const size_t len) /* SMM Module Loading API */ /* The smm_loader_params structure provides direction to the SMM loader: - * - stack_top - optional external stack provided to loader. It must be at - * least per_cpu_stack_size * num_concurrent_stacks in size. - * - per_cpu_stack_size - stack size per CPU for smm modules. * - num_concurrent_stacks - number of concurrent cpus in handler needing stack * optional for setting up relocation handler. * - per_cpu_save_state_size - the SMM save state size per cpu @@ -135,8 +132,6 @@ static inline bool smm_points_to_smram(const void *ptr, const size_t len) * handle sparse APIC id space. */ struct smm_loader_params { - uintptr_t stack_top; - size_t per_cpu_stack_size; size_t num_concurrent_stacks; size_t real_cpu_save_state_size; @@ -148,8 +143,10 @@ struct smm_loader_params { struct smm_stub_params *stub_params; }; -/* Both of these return 0 on success, < 0 on failure. */ -int smm_setup_relocation_handler(const uintptr_t perm_smram, struct smm_loader_params *params); +/* All of these return 0 on success, < 0 on failure. */ +int smm_setup_stack(const uintptr_t perm_smbase, const size_t perm_smram_size, + const unsigned int total_cpus, const size_t stack_size); +int smm_setup_relocation_handler(struct smm_loader_params *params); int smm_load_module(uintptr_t smram_base, size_t smram_size, struct smm_loader_params *params); u32 smm_get_cpu_smbase(unsigned int cpu_num); |