cpu/x86/(sipi|smm): Pass on CR3 from ramstage
To allow for more flexibility like generating page tables at runtime or page tables that are part of the ramstage, add a parameter to sipi_vector.S and smm_stub.S so that APs use the same page tables as the BSP during their initialization. Signed-off-by: Arthur Heymans <arthur@aheymans.xyz> Change-Id: I1250ea6f63c65228178ee66e06d988dadfcc2a37 Reviewed-on: https://review.coreboot.org/c/coreboot/+/80335 Reviewed-by: Patrick Rudolph <patrick.rudolph@9elements.com> Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Jérémy Compostella <jeremy.compostella@intel.com>
This commit is contained in:
parent
f45fcd1cf3
commit
3cfcffe49c
4 changed files with 12 additions and 2 deletions
|
|
@ -109,6 +109,7 @@ struct smm_stub_params {
|
|||
u32 stack_size;
|
||||
u32 stack_top;
|
||||
u32 c_handler;
|
||||
u32 cr3;
|
||||
/* The apic_id_to_cpu provides a mapping from APIC id to CPU number.
|
||||
* The CPU number is indicated by the index into the array by matching
|
||||
* the default APIC id and value at the index. The stub loader
|
||||
|
|
@ -165,6 +166,7 @@ struct smm_loader_params {
|
|||
size_t num_concurrent_save_states;
|
||||
|
||||
smm_handler_t handler;
|
||||
uint32_t cr3;
|
||||
};
|
||||
|
||||
/* All of these return 0 on success, < 0 on failure. */
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue