summaryrefslogtreecommitdiff
path: root/src/include
diff options
context:
space:
mode:
authorMartin Roth <martinroth@chromium.org>2019-04-22 16:26:23 -0600
committerKyösti Mälkki <kyosti.malkki@gmail.com>2019-08-26 22:53:07 +0000
commit8418fd418c8fcef5ca59109be33dececee9cda29 (patch)
treecf2d23e031055ce05cfa4c7b4c12461ffc707108 /src/include
parenta165c07ed7ffdfc0d64eadb911a1cf576b26b0f0 (diff)
downloadcoreboot-8418fd418c8fcef5ca59109be33dececee9cda29.tar.xz
x86: Introduce RESET_VECTOR_IN_RAM option
Create a new Kconfig symbol that allows an x86 device to begin execution when its reset vector is in DRAM and not at the traditional 0xfffffff0. The implementation will follow later, this is just to setup various ENV_xxx definitions correctly for the build environment. Change-Id: I098ecf8bf200550db1e15f178f7661c1ac516dc5 Signed-off-by: Marshall Dawson <marshalldawson3rd@gmail.com> Signed-off-by: Kyösti Mälkki <kyosti.malkki@gmail.com> Reviewed-on: https://review.coreboot.org/c/coreboot/+/35004 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Julius Werner <jwerner@chromium.org>
Diffstat (limited to 'src/include')
-rw-r--r--src/include/rules.h2
-rw-r--r--src/include/symbols.h2
2 files changed, 2 insertions, 2 deletions
diff --git a/src/include/rules.h b/src/include/rules.h
index 9fd7dc32da..dc4210a06f 100644
--- a/src/include/rules.h
+++ b/src/include/rules.h
@@ -271,7 +271,7 @@
#if CONFIG(ARCH_X86)
/* Indicates memory layout is determined with arch/x86/car.ld. */
-#define ENV_CACHE_AS_RAM ENV_ROMSTAGE_OR_BEFORE
+#define ENV_CACHE_AS_RAM (ENV_ROMSTAGE_OR_BEFORE && !CONFIG(RESET_VECTOR_IN_RAM))
/* No .data sections with execute-in-place from ROM. */
#define ENV_STAGE_HAS_DATA_SECTION !ENV_CACHE_AS_RAM
/* No .bss sections for stage with CAR teardown. */
diff --git a/src/include/symbols.h b/src/include/symbols.h
index 76c93202d0..56df8d5734 100644
--- a/src/include/symbols.h
+++ b/src/include/symbols.h
@@ -72,7 +72,7 @@ DECLARE_REGION(bl31)
* (Does not necessarily mean that the memory is accessible.) */
static inline int preram_symbols_available(void)
{
- return !CONFIG(ARCH_X86) || ENV_CACHE_AS_RAM;
+ return !CONFIG(ARCH_X86) || ENV_ROMSTAGE_OR_BEFORE;
}
#endif /* __SYMBOLS_H */