summaryrefslogtreecommitdiff
path: root/src/lib
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib')
-rw-r--r--src/lib/Kconfig7
-rw-r--r--src/lib/fmap.c11
2 files changed, 14 insertions, 4 deletions
diff --git a/src/lib/Kconfig b/src/lib/Kconfig
index cb1e4a5cc8..dd9974a817 100644
--- a/src/lib/Kconfig
+++ b/src/lib/Kconfig
@@ -68,3 +68,10 @@ config HWBASE_DIRECT_PCIDEV
def_bool y
endif
+
+config NO_FMAP_CACHE
+ bool
+ help
+ If your platform really doesn't want to use an FMAP cache (e.g. due to
+ space constraints), you can select this to disable warnings and save
+ a bit more code.
diff --git a/src/lib/fmap.c b/src/lib/fmap.c
index 4b4179c769..48aab8f3d5 100644
--- a/src/lib/fmap.c
+++ b/src/lib/fmap.c
@@ -60,6 +60,9 @@ static void report(const struct fmap *fmap)
static void setup_preram_cache(struct mem_region_device *cache_mrdev)
{
+ if (CONFIG(NO_FMAP_CACHE))
+ return;
+
if (!ENV_ROMSTAGE_OR_BEFORE) {
/* We get here if ramstage makes an FMAP access before calling
cbmem_initialize(). We should avoid letting it come to that,
@@ -70,10 +73,10 @@ static void setup_preram_cache(struct mem_region_device *cache_mrdev)
}
if (REGION_SIZE(fmap_cache) == 0) {
- /* If you see this you really want to add an FMAP_CACHE to your
- memlayout, unless you absolutely can't affort the 2K. */
- print_once(BIOS_NOTICE,
- "NOTE: Running without FMAP_CACHE, should add it!\n");
+ /* If you see this you should add FMAP_CACHE() to your memlayout
+ (or select NO_FMAP_CACHE if you can't afford the 2K). */
+ print_once(BIOS_ERR,
+ "ERROR: FMAP_CACHE enabled but no region provided!\n");
return;
}