summaryrefslogtreecommitdiffstats
path: root/boot/uboot/uboot.mk
diff options
context:
space:
mode:
authorJan Viktorin <viktorin@rehivetech.com>2015-07-14 17:16:02 +0200
committerThomas Petazzoni <thomas.petazzoni@free-electrons.com>2015-07-18 23:04:44 +0200
commitaabe23f8615f065d7bf62801d38efd17125e78d0 (patch)
tree7ce4b7cb26391dad709b5b3d8c97f242537c3782 /boot/uboot/uboot.mk
parentee845a46e2e7d60ac52c38555c183020ce8cd711 (diff)
downloadbuildroot-aabe23f8615f065d7bf62801d38efd17125e78d0.tar.gz
buildroot-aabe23f8615f065d7bf62801d38efd17125e78d0.zip
boot/uboot: Generate BOOT.BIN file when building for Xilinx Zynq
This commit integrates generation of a bootable image for Xilinx Zynq. The generation is independent on Xilinx flow and utilizes the host-zynq-boot-bin package. The only required step is to generate a proper U-Boot SPL (instead of the FSBL). The SPL generation might work when providing the working ps7_init.c file to U-Boot. However, from U-Boot 2015.07 a set of generic ps7_init.c files is included and used to build the U-Boot SPL for various boards. The ps7_init.c file has been released under GNU/GPL license for this purpose. For details, see http://lists.denx.de/pipermail/u-boot/2015-April/210664.html The SPL searchs for u-boot-dtb.img when booting so we enforce using of the BR2_TARGET_UBOOT_FORMAT_DTB_IMG format. [Thomas: remove select of BR2_PACKAGE_HOST_ZYNQ_BOOT_BIN, since this option no longer exists.] Signed-off-by: Jan Viktorin <viktorin@rehivetech.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Diffstat (limited to 'boot/uboot/uboot.mk')
-rw-r--r--boot/uboot/uboot.mk10
1 files changed, 10 insertions, 0 deletions
diff --git a/boot/uboot/uboot.mk b/boot/uboot/uboot.mk
index 805367807d..042e066a21 100644
--- a/boot/uboot/uboot.mk
+++ b/boot/uboot/uboot.mk
@@ -182,6 +182,16 @@ UBOOT_POST_BUILD_HOOKS += UBOOT_BUILD_OMAP_IFT
UBOOT_POST_INSTALL_IMAGES_HOOKS += UBOOT_INSTALL_OMAP_IFT_IMAGE
endif
+ifeq ($(BR2_TARGET_UBOOT_ZYNQ_IMAGE),y)
+define UBOOT_GENERATE_ZYNQ_IMAGE
+ $(HOST_DIR)/usr/bin/python2 $(HOST_DIR)/usr/bin/zynq-boot-bin.py \
+ -u $(@D)/$(call qstrip,$(BR2_TARGET_UBOOT_SPL_NAME)) \
+ -o $(BINARIES_DIR)/BOOT.BIN
+endef
+UBOOT_DEPENDENCIES += host-zynq-boot-bin
+UBOOT_POST_INSTALL_IMAGES_HOOKS += UBOOT_GENERATE_ZYNQ_IMAGE
+endif
+
ifeq ($(BR2_TARGET_UBOOT_ENVIMAGE),y)
ifeq ($(BR_BUILDING),y)
ifeq ($(call qstrip,$(BR2_TARGET_UBOOT_ENVIMAGE_SOURCE)),)
OpenPOWER on IntegriCloud