diff options
-rw-r--r-- | payloads/external/Makefile.inc | 12 | ||||
-rw-r--r-- | payloads/external/Memtest86Plus/Kconfig.secondary | 31 | ||||
-rw-r--r-- | payloads/external/Memtest86Plus/Makefile | 35 |
3 files changed, 66 insertions, 12 deletions
diff --git a/payloads/external/Makefile.inc b/payloads/external/Makefile.inc index 8222dc8918..779b3f4260 100644 --- a/payloads/external/Makefile.inc +++ b/payloads/external/Makefile.inc @@ -304,8 +304,14 @@ img/tint-compression := $(CBFS_SECONDARY_PAYLOAD_COMPRESS_FLAG) # Memtest86+ +ifeq ($(CONFIG_MEMTEST86PLUS_V6),y) +memtest_dir:=memtest86plus_v6 +else +memtest_dir:=memtest86plus_v5 +endif + cbfs-files-$(CONFIG_MEMTEST_SECONDARY_PAYLOAD) += img/memtest -img/memtest-file := payloads/external/Memtest86Plus/memtest86plus/memtest +img/memtest-file := payloads/external/Memtest86Plus/$(memtest_dir)/memtest img/memtest-type := payload img/memtest-compression := $(CBFS_SECONDARY_PAYLOAD_COMPRESS_FLAG) @@ -315,7 +321,7 @@ ifeq ($(CONFIG_CONSOLE_SERIAL)$(CONFIG_DRIVERS_UART_8250IO),yy) SERIAL_BAUD_RATE=$(CONFIG_TTYS0_BAUD) endif -payloads/external/Memtest86Plus/memtest86plus/memtest: $(DOTCONFIG) +payloads/external/Memtest86Plus/$(memtest_dir)/memtest: $(DOTCONFIG) $(MAKE) -C payloads/external/Memtest86Plus all \ CC="$(CC_x86_32)" \ LD="$(LD_x86_32)" \ @@ -325,6 +331,8 @@ payloads/external/Memtest86Plus/memtest86plus/memtest: $(DOTCONFIG) CONFIG_MEMTEST_REVISION_ID=$(CONFIG_MEMTEST_REVISION_ID) \ CONFIG_MEMTEST_MAIN=$(CONFIG_MEMTEST_MAIN) \ CONFIG_MEMTEST_STABLE=$(CONFIG_MEMTEST_STABLE) \ + CONFIG_MEMTEST86PLUS_V5=$(CONFIG_MEMTEST86PLUS_V5) \ + CONFIG_MEMTEST86PLUS_V6=$(CONFIG_MEMTEST86PLUS_V6) \ $(MEMTEST_SERIAL_OPTIONS) \ MFLAGS= MAKEFLAGS= diff --git a/payloads/external/Memtest86Plus/Kconfig.secondary b/payloads/external/Memtest86Plus/Kconfig.secondary index 98a0d06cb9..d357399f09 100644 --- a/payloads/external/Memtest86Plus/Kconfig.secondary +++ b/payloads/external/Memtest86Plus/Kconfig.secondary @@ -1,8 +1,32 @@ if MEMTEST_SECONDARY_PAYLOAD +comment "Memtest86+" + +choice + prompt "Memtest86+ 5/6" + +config MEMTEST86PLUS_V6 + bool "Memtest86+ V6" + +config MEMTEST86PLUS_V5 + bool "Memtest86+ V5" + +endchoice + choice - prompt "Memtest86+ version" - default MEMTEST_STABLE + prompt "Target architecture" + depends on MEMTEST86PLUS_V6 + +config MEMTEST86PLUS_ARCH_64 + bool "64 bit" + +config MEMTEST86PLUS_ARCH_32 + bool "32 bit" + +endchoice + +choice + prompt "Memtest86+ revision" depends on MEMTEST_SECONDARY_PAYLOAD config MEMTEST_STABLE @@ -19,12 +43,13 @@ config MEMTEST_MAIN This option will fetch the newest version of the Memtest86+ code, updating as new changes are committed. This makes the build non-reproducible, as it can fetch different code each time. + config MEMTEST_REVISION bool "git revision" help Select this option if you have a specific commit or branch that you want to use as the revision from which to - build Memtest86+. This makes the build + build Memtest86+. Using a branch version makes the build non-reproducible, as it can fetch different code each time. You will be able to specify the name of a branch or a commit id diff --git a/payloads/external/Memtest86Plus/Makefile b/payloads/external/Memtest86Plus/Makefile index fe24e2c780..8f3205831c 100644 --- a/payloads/external/Memtest86Plus/Makefile +++ b/payloads/external/Memtest86Plus/Makefile @@ -1,14 +1,32 @@ ## SPDX-License-Identifier: GPL-2.0-only +project_name=Memtest86+ + +ifeq ($(CONFIG_MEMTEST86PLUS_V6),y) +project_dir=$(CURDIR)/memtest86plus_v6 + +ifeq ($(MEMTEST86PLUS_ARCH_64),y) +build_dir=$(project_dir)/build64 +else +build_dir=$(project_dir)/build32 +endif +project_git_repo=https://github.com/memtest86plus/memtest86plus.git TAG-$(CONFIG_MEMTEST_MAIN)=origin/main NAME-$(CONFIG_MEMTEST_MAIN)=Main -TAG-$(CONFIG_MEMTEST_STABLE)=0bd34c22604660e4283316331f3e7bf8a3863753 +TAG-$(CONFIG_MEMTEST_STABLE)=v6.20 NAME-$(CONFIG_MEMTEST_STABLE)=Stable TAG-$(CONFIG_MEMTEST_REVISION)=$(CONFIG_MEMTEST_REVISION_ID) +else +project_dir=$(CURDIR)/memtest86plus_v5 -project_name=Memtest86+ -project_dir=$(CURDIR)/memtest86plus +build_dir=$(project_dir) project_git_repo=https://review.coreboot.org/memtest86plus.git +TAG-$(CONFIG_MEMTEST_MAIN)=origin/main +NAME-$(CONFIG_MEMTEST_MAIN)=Main +TAG-$(CONFIG_MEMTEST_STABLE)=0bd34c22604660e4283316331f3e7bf8a3863753 +NAME-$(CONFIG_MEMTEST_STABLE)=Stable +TAG-$(CONFIG_MEMTEST_REVISION)=$(CONFIG_MEMTEST_REVISION_ID) +endif all: build @@ -25,7 +43,7 @@ ifeq ($(CONFIG_MEMTEST_REVISION),y) endif false endif - -cd $(project_dir); git show $(TAG-y) >/dev/null 2>&1 ; \ + -cd $(project_dir) 2>/dev/null; git show $(TAG-y) >/dev/null 2>&1 ; \ if [ $$? -ne 0 ] || [ "$(TAG-y)" = "origin/main" ]; then \ echo " Fetching new commits from the $(project_name) git repo"; \ git fetch; fi @@ -39,10 +57,13 @@ checkout: fetch build: checkout echo " MAKE $(project_name) $(NAME-y)" - $(MAKE) -C $(project_dir) all + $(MAKE) -C $(build_dir) all +ifeq ($(CONFIG_MEMTEST86PLUS_V6),y) + cp $(build_dir)/memtest.bin $(project_dir)/memtest +endif clean: - test -d $(project_dir) && $(MAKE) -C $(project_dir) clean || exit 0 + test -d $(build_dir) && $(MAKE) -C $(build_dir) clean || exit 0 distclean: rm -rf $(project_dir) @@ -50,4 +71,4 @@ distclean: print-repo-info: echo "$(project_git_repo) $(project_dir)" -.PHONY: all build checkout clean distclean fetch print-repo-info +.PHONY: all build checkout check_version clean distclean fetch print-repo-info |