ron minnich has uploaded this change for review. ( https://review.coreboot.org/c/coreboot/+/37481 )
Change subject: Fix linuxcheck payload and start to fix bayou payload ......................................................................
Fix linuxcheck payload and start to fix bayou payload
The payloads have issues building. Bayou build doesn't work at all, and doesn't even properly create an elf file; if you select bayou, the cbfs will have no fallback/payload file at all.
linuxcheck, which I have found very useful, is not included in the list.
The payloads/Kconfig file tries to include a non-existent payloads/bayou/Kconfig.
I'm going to try to clean this up, bit by bit. This first CL makes linuxcheck a first class payload; removes reference to non-existant files; correctly sets the payload name for linuxcheck and bayou; and makes sure linuxcheck builds.
Tested on qemu by enabling the linuxcheck payload and seeing it work.
We really need to start building these payloads on jenkins for, say, qemu-q35. They're seriously bit-rotted. I don't even know the last time bayou worked.
Change-Id: Ie5031ff78bf83d8c1cb3a5dd50d1e6b1bc3da424 Signed-off-by: Ronald G. Minnich rminnich@gmail.com --- M payloads/Kconfig M payloads/Makefile.inc M payloads/linuxcheck/Makefile 3 files changed, 16 insertions(+), 4 deletions(-)
git pull ssh://review.coreboot.org:29418/coreboot refs/changes/81/37481/1
diff --git a/payloads/Kconfig b/payloads/Kconfig index 46cfaf5..ecf27f4 100644 --- a/payloads/Kconfig +++ b/payloads/Kconfig @@ -47,17 +47,25 @@ Select this option if you want to set bayou as your primary payload.
+config PAYLOAD_LINUXCHECK + bool "Linuxcheck" + depends on ARCH_X86 + help + Select this option if you want to set linuxcheck as your primary + payload. linuxcheck does some basic checking to make sure a Linux + kernel will at least boot enough to give you panic output. + source "payloads/external/*/Kconfig.name"
endchoice
source "payloads/external/*/Kconfig"
-source "payloads/bayou/Kconfig" - config PAYLOAD_FILE string "Payload path and filename" - depends on PAYLOAD_ELF || PAYLOAD_FIT + depends on PAYLOAD_ELF || PAYLOAD_FIT || PAYLOAD_BAYOU || PAYLOAD_LINUXCHECK + default "payloads/bayou/build/bayou.elf" if PAYLOAD_BAYOU + default "payloads/linuxcheck/linuxcheck.elf" if PAYLOAD_LINUXCHECK default "payload.elf" if PAYLOAD_ELF default "uImage" if PAYLOAD_FIT help diff --git a/payloads/Makefile.inc b/payloads/Makefile.inc index 83d3910..563cbbd 100644 --- a/payloads/Makefile.inc +++ b/payloads/Makefile.inc @@ -24,6 +24,7 @@ img/nvramcui-compression := $(CBFS_SECONDARY_PAYLOAD_COMPRESS_FLAG)
PAYLOADS_LIST=\ +payloads/bayou \ payloads/coreinfo \ payloads/nvramcui \ payloads/libpayload \ @@ -38,6 +39,9 @@ payloads/external/LinuxBoot \ payloads/external/Yabits \
+payloads/bayou/build/bayou.elf bayou: + $(MAKE) -C payloads/bayou + payloads/coreinfo/build/coreinfo.elf coreinfo: $(MAKE) -C payloads/coreinfo defaultbuild
diff --git a/payloads/linuxcheck/Makefile b/payloads/linuxcheck/Makefile index 838c90d..a32dde8 100644 --- a/payloads/linuxcheck/Makefile +++ b/payloads/linuxcheck/Makefile @@ -19,7 +19,7 @@ include $(XCOMPILE) LPGCC = CC="$(GCC_CC_x86_32)" "$(LIBPAYLOAD_DIR)/bin/lpgcc" %.elf: %.c Makefile - $(LPGCC) $(CFLAGS) -o $*.elf $*.c $(TARGETARCH).c + $(LPGCC) $(CFLAGS) -o $*.elf linuxcheck.c i386.c else # If libpayload is not found, first build libpayload, # then do the make, this time it'll find libpayload