Commit 7689b72e authored by Thomas Petazzoni's avatar Thomas Petazzoni Committed by Peter Korsgaard
Browse files

boot-wrapper-aarch64: new package



The boot wrapper contains both a minimal bootloader and a tool to
generate an image suitable for execution by the AArch64 software
simulator. The image generated embeds the minimal bootloader, the
kernel image, the Device Tree Blob and the kernel command line.

Signed-off-by: default avatarThomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: default avatarPeter Korsgaard <jacmet@sunsite.dk>
parent b90a1030
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -4,6 +4,7 @@ source "boot/at91bootstrap/Config.in"
source "boot/at91bootstrap3/Config.in"
source "boot/at91dataflashboot/Config.in"
source "boot/barebox/Config.in"
source "boot/boot-wrapper-aarch64/Config.in"
source "boot/grub/Config.in"
source "boot/lpc32xxcdl/Config.in"
source "boot/mxs-bootlets/Config.in"
+31 −0
Original line number Diff line number Diff line
config BR2_TARGET_BOOT_WRAPPER_AARCH64
	bool "boot-wrapper-aarch64"
	depends on BR2_aarch64
	depends on BR2_LINUX_KERNEL
	help
	  The boot-wrapper-aarch64 is a small bootloader that makes it
	  possible to start an Aarch64 kernel inside the available
	  software simulators for the Aarch64 architecture.

	  git://git.kernel.org/pub/scm/linux/kernel/git/cmarinas/boot-wrapper-aarch64.git

if BR2_TARGET_BOOT_WRAPPER_AARCH64

config BR2_TARGET_BOOT_WRAPPER_AARCH64_DTS
	string "Device Tree Source name"
	default ""
	help
	  Name of the Device Tree Source file to use to generate the
	  Device Tree Blob that will be embedded in the image
	  generated by the boot wrapper. Valid names are the .dts
	  files from arch/arm64/boot/dts/ in the kernel source
	  tree. The name must be specified without the .dts suffix.

config BR2_TARGET_BOOT_WRAPPER_AARCH64_BOOTARGS
	string "Kernel bootargs"
	default ""
	help
	  Kernel bootargs to embed inside the image generated by the
	  boot wrapper.

endif
+29 −0
Original line number Diff line number Diff line
#############################################################
#
# boot-wrapper-aarch64
#
#############################################################

BOOT_WRAPPER_AARCH64_VERSION        = 26b62f586020fd998c6efd43db657eaafeec14da
BOOT_WRAPPER_AARCH64_SITE           = git://git.kernel.org/pub/scm/linux/kernel/git/cmarinas/boot-wrapper-aarch64.git
BOOT_WRAPPER_AARCH64_LICENSE        = BSD3c
BOOT_WRAPPER_AARCH64_LICENSE_FILES  = LICENSE.txt
BOOT_WRAPPER_AARCH64_DEPENDENCIES   = linux
BOOT_WRAPPER_AARCH64_INSTALL_IMAGES = YES

BOOT_WRAPPER_AARCH64_DTS = $(call qstrip,$(BR2_TARGET_BOOT_WRAPPER_AARCH64_DTS))

define BOOT_WRAPPER_AARCH64_BUILD_CMDS
	$(MAKE) \
		KERNEL=$(BINARIES_DIR)/Image \
		DTC=$(LINUX_DIR)/scripts/dtc/dtc \
		FDT_SRC=$(LINUX_DIR)/arch/arm64/boot/dts/$(BOOT_WRAPPER_AARCH64_DTS).dts \
		CROSS_COMPILE="$(CCACHE) $(TARGET_CROSS)" \
		BOOTARGS='$(BR2_TARGET_BOOT_WRAPPER_AARCH64_BOOTARGS)' -C $(@D)
endef

define BOOT_WRAPPER_AARCH64_INSTALL_IMAGES_CMDS
	cp $(@D)/linux-system.axf $(BINARIES_DIR)
endef

$(eval $(generic-package))