summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Makefile.inc8
-rw-r--r--src/Kconfig18
2 files changed, 26 insertions, 0 deletions
diff --git a/Makefile.inc b/Makefile.inc
index 53a3dadab0..c17978498e 100644
--- a/Makefile.inc
+++ b/Makefile.inc
@@ -67,6 +67,14 @@ ifeq ($(CONFIG_TRACE),y)
ramstage-c-ccopts:= -finstrument-functions
endif
+ifeq ($(CONFIG_USE_BLOBS),y)
+forgetthis:=$(shell git submodule update --init --checkout 3rdparty)
+else
+ifeq ($(CONFIG_REQUIRES_BLOB),y)
+$(error Your current configuration requires binary-only components, but you did not choose to use them)
+endif
+endif
+
smm-c-ccopts:=-D__SMM__
smm-S-ccopts:=-D__SMM__
diff --git a/src/Kconfig b/src/Kconfig
index e8a560df24..d449b30b84 100644
--- a/src/Kconfig
+++ b/src/Kconfig
@@ -175,6 +175,24 @@ config COLLECT_TIMESTAMPS
Make coreboot create a table of timer-ID/timer-value pairs to
allow measuring time spent at different phases of the boot process.
+config USE_BLOBS
+ bool "Allow use of binary-only repository"
+ default n
+ help
+ This draws in the blobs repository, which contains binary files that
+ might be required for some chipsets or boards.
+ This flag ensures that a "Free" option remains available for users.
+
+config REQUIRES_BLOB
+ bool
+ default n
+ help
+ This option can be configured by boards that require the blobs
+ repository for the default configuration. It will make the build
+ fail if USE_BLOBS is disabled. Users that still desire to do a
+ coreboot build for such a board can override this manually, but
+ this option serves as warning that it might fail.
+
endmenu
source src/mainboard/Kconfig