diff options
Diffstat (limited to 'src/cpu/amd/agesa')
-rw-r--r-- | src/cpu/amd/agesa/romstage.c | 19 |
1 files changed, 9 insertions, 10 deletions
diff --git a/src/cpu/amd/agesa/romstage.c b/src/cpu/amd/agesa/romstage.c index 91c5518207..7955345a46 100644 --- a/src/cpu/amd/agesa/romstage.c +++ b/src/cpu/amd/agesa/romstage.c @@ -30,6 +30,10 @@ #include <northbridge/amd/agesa/agesa_helper.h> #include <northbridge/amd/agesa/state_machine.h> +#if IS_ENABLED(CONFIG_LATE_CBMEM_INIT) +#error "Only EARLY_CBMEM_INIT is supported." +#endif + void asmlinkage early_all_cores(void) { amd_initmmio(); @@ -54,7 +58,6 @@ void * asmlinkage romstage_main(unsigned long bist) struct sysinfo romstage_state; struct sysinfo *cb = &romstage_state; u8 initial_apic_id = (u8) (cpuid_ebx(1) >> 24); - uintptr_t stack_top = CACHE_TMP_RAMTOP; int cbmem_initted = 0; fill_sysinfo(cb); @@ -98,22 +101,18 @@ void * asmlinkage romstage_main(unsigned long bist) } - if (IS_ENABLED(CONFIG_EARLY_CBMEM_INIT) || cb->s3resume) - cbmem_initted = !cbmem_recovery(cb->s3resume); + cbmem_initted = !cbmem_recovery(cb->s3resume); if (cb->s3resume && !cbmem_initted) { printk(BIOS_EMERG, "Unable to recover CBMEM\n"); halt(); } - if (IS_ENABLED(CONFIG_EARLY_CBMEM_INIT) || cb->s3resume) { - stack_top = romstage_ram_stack_base(HIGH_ROMSTAGE_STACK_SIZE, - ROMSTAGE_STACK_CBMEM); - stack_top += HIGH_ROMSTAGE_STACK_SIZE; - } + uintptr_t stack_top = romstage_ram_stack_base(HIGH_ROMSTAGE_STACK_SIZE, + ROMSTAGE_STACK_CBMEM); + stack_top += HIGH_ROMSTAGE_STACK_SIZE; - if (IS_ENABLED(CONFIG_EARLY_CBMEM_INIT)) - romstage_handoff_init(cb->s3resume); + romstage_handoff_init(cb->s3resume); printk(BIOS_DEBUG, "Move CAR stack.\n"); return (void*)stack_top; |