summaryrefslogtreecommitdiff
path: root/src/cpu
diff options
context:
space:
mode:
Diffstat (limited to 'src/cpu')
-rw-r--r--src/cpu/amd/agesa/romstage.c19
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;