summaryrefslogtreecommitdiff
path: root/src/cpu
diff options
context:
space:
mode:
Diffstat (limited to 'src/cpu')
-rw-r--r--src/cpu/Kconfig9
-rw-r--r--src/cpu/x86/Makefile.inc2
2 files changed, 11 insertions, 0 deletions
diff --git a/src/cpu/Kconfig b/src/cpu/Kconfig
index 009d80cac1..915526b2dc 100644
--- a/src/cpu/Kconfig
+++ b/src/cpu/Kconfig
@@ -10,6 +10,15 @@ config CACHE_AS_RAM
bool
default !ROMCC
+config NO_CAR_GLOBAL_MIGRATION
+ bool
+ default n
+ depends on CACHE_AS_RAM
+ help
+ This option is selected if there is no need to migrate CAR globals.
+ All stages which use CAR globals can directly access the variables
+ from their linked addresses.
+
config DCACHE_RAM_BASE
hex
diff --git a/src/cpu/x86/Makefile.inc b/src/cpu/x86/Makefile.inc
index 1724a060b8..771784e6ff 100644
--- a/src/cpu/x86/Makefile.inc
+++ b/src/cpu/x86/Makefile.inc
@@ -1,6 +1,8 @@
ifeq ($(CONFIG_ARCH_ROMSTAGE_X86_32)$(CONFIG_ARCH_ROMSTAGE_X86_64),y)
+ifneq ($(CONFIG_NO_CAR_GLOBAL_MIGRATION),y)
romstage-$(CONFIG_CACHE_AS_RAM) += car.c
endif
+endif
subdirs-$(CONFIG_PARALLEL_MP) += name
ramstage-$(CONFIG_PARALLEL_MP) += mp_init.c