dm: test: Build tests for SPL
authorSimon Glass <sjg@chromium.org>
Mon, 26 Oct 2020 02:38:26 +0000 (20:38 -0600)
committerSimon Glass <sjg@chromium.org>
Thu, 29 Oct 2020 20:42:18 +0000 (14:42 -0600)
We want to run unit tests in SPL. Add a new Kconfig to control this and
enable it for sandbox_spl

Signed-off-by: Simon Glass <sjg@chromium.org>
configs/sandbox_spl_defconfig
scripts/Makefile.spl
test/Kconfig

index 1d49e81..f59e4f2 100644 (file)
@@ -22,7 +22,6 @@ CONFIG_BOOTSTAGE_STASH=y
 CONFIG_BOOTSTAGE_STASH_SIZE=0x4096
 CONFIG_CONSOLE_RECORD=y
 CONFIG_CONSOLE_RECORD_OUT_SIZE=0x1000
-CONFIG_SILENT_CONSOLE=y
 CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_HANDOFF=y
 CONFIG_SPL_BOARD_INIT=y
@@ -221,5 +220,6 @@ CONFIG_TPM=y
 CONFIG_LZ4=y
 CONFIG_ERRNO_STR=y
 CONFIG_UNIT_TEST=y
+CONFIG_SPL_UNIT_TEST=y
 CONFIG_UT_TIME=y
 CONFIG_UT_DM=y
index d528c99..2e3a443 100644 (file)
@@ -99,6 +99,7 @@ libs-y += dts/
 libs-y += fs/
 libs-$(CONFIG_SPL_POST_MEM_SUPPORT) += post/drivers/
 libs-$(CONFIG_SPL_NET_SUPPORT) += net/
+libs-$(CONFIG_SPL_UNIT_TEST) += test/
 
 head-y         := $(addprefix $(obj)/,$(head-y))
 libs-y         := $(addprefix $(obj)/,$(libs-y))
index 28704a2..2646e7d 100644 (file)
@@ -6,6 +6,16 @@ menuconfig UNIT_TEST
          This does not require sandbox to be included, but it is most
          often used there.
 
+config SPL_UNIT_TEST
+       bool "Unit tests in SPL"
+       # We need to be able to unbind devices for tests to work
+       select SPL_DM_DEVICE_REMOVE
+       help
+         Select this to enable unit tests in SPL. Most test are designed for
+         running in U-Boot proper, but some are intended for SPL, such as
+         of-platdata and SPL handover. To run these tests with the sandbox_spl
+         board, use the -u (unit test) option.
+
 config UT_LIB
        bool "Unit tests for library functions"
        depends on UNIT_TEST