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: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
This commit is contained in:
Thomas Petazzoni 2012-10-28 17:40:36 +01:00 committed by Peter Korsgaard
parent b90a10303e
commit 7689b72e00
3 changed files with 61 additions and 0 deletions

View File

@ -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"

View File

@ -0,0 +1,31 @@
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

View File

@ -0,0 +1,29 @@
#############################################################
#
# 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))