aboutsummaryrefslogtreecommitdiff
path: root/src/cpu/x86
diff options
context:
space:
mode:
Diffstat (limited to 'src/cpu/x86')
-rw-r--r--src/cpu/x86/Makefile.inc3
-rw-r--r--src/cpu/x86/car.c8
2 files changed, 8 insertions, 3 deletions
diff --git a/src/cpu/x86/Makefile.inc b/src/cpu/x86/Makefile.inc
index 418b5d7b66..2347f88500 100644
--- a/src/cpu/x86/Makefile.inc
+++ b/src/cpu/x86/Makefile.inc
@@ -1,6 +1,5 @@
ifeq ($(CONFIG_ARCH_ROMSTAGE_X86_32),y)
-romstage-$(CONFIG_EARLY_CBMEM_INIT) += car.c
-romstage-$(CONFIG_BROKEN_CAR_MIGRATE) += car.c
+romstage-$(CONFIG_CACHE_AS_RAM) += car.c
endif
subdirs-$(CONFIG_PARALLEL_MP) += name
diff --git a/src/cpu/x86/car.c b/src/cpu/x86/car.c
index a7e38420a8..c9cc6d6178 100644
--- a/src/cpu/x86/car.c
+++ b/src/cpu/x86/car.c
@@ -73,7 +73,7 @@ void *car_get_var_ptr(void *var)
return &migrated_base[offset];
}
-void car_migrate_variables(void)
+static void do_car_migrate_variables(void)
{
void *migrated_base;
car_migration_func_t *migrate_func;
@@ -102,3 +102,9 @@ void car_migrate_variables(void)
migrate_func++;
}
}
+
+void car_migrate_variables(void)
+{
+ if (!IS_ENABLED(CONFIG_BROKEN_CAR_MIGRATE))
+ do_car_migrate_variables();
+}