From a4266691e32d2776ca038a126d1e7b17527ba296 Mon Sep 17 00:00:00 2001 From: Marcello Sylvester Bauer Date: Tue, 6 Nov 2018 12:32:14 +0100 Subject: Linux/Linuxboot: share cmdline and initrd parser Merge the command-line and initramfs parser from 'a linux payload' and 'LinuxBoot'. GOAL: merge 'a Linux payload' and 'LinuxBoot' Change-Id: I2d2aef5d07453b98e115af6ee06318c690def785 Signed-off-by: Marcello Sylvester Bauer Reviewed-on: https://review.coreboot.org/29510 Reviewed-by: Patrick Rudolph Reviewed-by: Philipp Deppenwiese Tested-by: build bot (Jenkins) --- payloads/external/LinuxBoot/Kconfig | 4 ++-- payloads/external/LinuxBoot/Makefile | 8 ++++---- payloads/external/Makefile.inc | 16 ++-------------- 3 files changed, 8 insertions(+), 20 deletions(-) (limited to 'payloads') diff --git a/payloads/external/LinuxBoot/Kconfig b/payloads/external/LinuxBoot/Kconfig index a872d49bf8..ba8b5a6d08 100644 --- a/payloads/external/LinuxBoot/Kconfig +++ b/payloads/external/LinuxBoot/Kconfig @@ -73,7 +73,7 @@ config LINUXBOOT_KERNEL_CONFIGFILE Add your own kernel configuration file. Otherwise a default minimal defconfig is used. -config LINUXBOOT_KERNEL_COMMANDLINE +config LINUX_COMMAND_LINE string "Kernel command-line" default "" help @@ -128,7 +128,7 @@ config LINUXBOOT_UROOT_FILES Path to directory containing root structure for embedding into the initramfs. -config PAYLOAD_USERSPACE +config LINUX_INITRD string default "payloads/external/LinuxBoot/linuxboot/initramfs.cpio.xz" diff --git a/payloads/external/LinuxBoot/Makefile b/payloads/external/LinuxBoot/Makefile index 006fb6ee5d..6d852cb2df 100644 --- a/payloads/external/LinuxBoot/Makefile +++ b/payloads/external/LinuxBoot/Makefile @@ -82,20 +82,20 @@ $(project_dir)/target.dtb: $(PWD)/$(CONFIG_LINUXBOOT_DTB_FILE) $(project_dir)/vmlinux.bin.lzma: $(project_dir)/vmlinux.bin xz -c -k -f --format=lzma --lzma1=dict=1MiB,lc=3,lp=0,pb=3 $< > $@ -$(project_dir)/kernel-image: $(project_dir)/vmlinux.bin.lzma $(project_dir)/../arm64/kernel_fdt_lzma.its $(project_dir)/target.dtb $(PWD)/$(CONFIG_PAYLOAD_USERSPACE) +$(project_dir)/kernel-image: $(project_dir)/vmlinux.bin.lzma $(project_dir)/../arm64/kernel_fdt_lzma.its $(project_dir)/target.dtb $(PWD)/$(CONFIG_LINUX_INITRD) cp $(project_dir)/../arm64/kernel_fdt_lzma.its $(project_dir) mkimage -f $(project_dir)/kernel_fdt_lzma.its $@ endif ifeq ($(CONFIG_LINUXBOOT_UROOT),y) -$(PWD)/$(CONFIG_PAYLOAD_USERSPACE): +$(PWD)/$(CONFIG_LINUX_INITRD): $(MAKE) -f targets/u-root.mk else -$(PWD)/$(CONFIG_PAYLOAD_USERSPACE): +$(PWD)/$(CONFIG_LINUX_INITRD): echo "Building without u-root support" endif -linuxboot: $(project_dir)/kernel-image $(PWD)/$(CONFIG_PAYLOAD_USERSPACE) +linuxboot: $(project_dir)/kernel-image $(PWD)/$(CONFIG_LINUX_INITRD) clean: if [ -d "$(kernel_dir)" ]; then rm -rf $(kernel_dir); fi diff --git a/payloads/external/Makefile.inc b/payloads/external/Makefile.inc index c730bbace3..74bec476e0 100644 --- a/payloads/external/Makefile.inc +++ b/payloads/external/Makefile.inc @@ -32,18 +32,7 @@ $(PAYLOAD_CONFIG): payloads/external/depthcharge/depthcharge/build/depthcharge.e #TODO: Figure out version endif -ifeq ($(CONFIG_PAYLOAD_LINUXBOOT),y) - ifeq ($(CONFIG_ARCH_X86),y) - ifneq ($(strip $(call strip_quotes,$(CONFIG_LINUXBOOT_KERNEL_COMMANDLINE))),) - ADDITIONAL_PAYLOAD_CONFIG+=-C $(CONFIG_LINUXBOOT_KERNEL_COMMANDLINE) - endif - ifneq ($(strip $(call strip_quotes,$(CONFIG_PAYLOAD_USERSPACE))),) - ADDITIONAL_PAYLOAD_CONFIG+=-I $(strip $(call strip_quotes,$(CONFIG_PAYLOAD_USERSPACE))) - endif - endif -endif - -ifeq ($(CONFIG_PAYLOAD_LINUX),y) +ifeq ($(CONFIG_PAYLOAD_LINUX)$(CONFIG_PAYLOAD_LINUXBOOT),y) ifneq ($(strip $(call strip_quotes,$(CONFIG_LINUX_COMMAND_LINE))),) ADDITIONAL_PAYLOAD_CONFIG+=-C $(CONFIG_LINUX_COMMAND_LINE) endif @@ -269,14 +258,13 @@ linuxboot: CPUS=$(CPUS) \ CONFIG_LINUXBOOT_KERNEL_VERSION=$(CONFIG_LINUXBOOT_KERNEL_VERSION) \ CONFIG_LINUXBOOT_KERNEL_CONFIGFILE=$(CONFIG_LINUXBOOT_KERNEL_CONFIGFILE) \ - CONFIG_LINUXBOOT_KERNEL_COMMANDLINE=$(CONFIG_LINUXBOOT_KERNEL_COMMANDLINE) \ CONFIG_LINUXBOOT_UROOT_VERSION=$(CONFIG_LINUXBOOT_UROOT_VERSION) \ CONFIG_LINUXBOOT_UROOT_COMMANDS=$(CONFIG_LINUXBOOT_UROOT_COMMANDS) \ CONFIG_LINUXBOOT_ARCH=$(CONFIG_LINUXBOOT_ARCH) \ CONFIG_LINUXBOOT_UROOT=$(CONFIG_LINUXBOOT_UROOT) \ CONFIG_LINUXBOOT_UROOT_FILES=$(CONFIG_LINUXBOOT_UROOT_FILES) \ CONFIG_LINUXBOOT_DTB_FILE=$(CONFIG_LINUXBOOT_DTB_FILE) \ - CONFIG_PAYLOAD_USERSPACE=$(CONFIG_PAYLOAD_USERSPACE) + CONFIG_LINUX_INITRD=$(CONFIG_LINUX_INITRD) payloads/external/LinuxBoot/linuxboot/kernel-image: linuxboot -- cgit v1.2.3