From 2965aa2faaccce43f6c3e451c0a2ded3734766e4 Mon Sep 17 00:00:00 2001 From: Chase Maupin Date: Mon, 6 Feb 2012 08:16:58 -0600 Subject: u-boot inc: update inc file for newer u-boot versions * Add support for different suffixes found with later u-boot versions which have switched from .bin to .img * Allow recipes that include u-boot.inc to also package an SPL if they build one. * Minimum requirement is to set the SPL_BINARY value to add the SPL to the u-boot package as well as into the deploy directory. Signed-off-by: Chase Maupin --- meta/recipes-bsp/u-boot/u-boot.inc | 35 +++++++++++++++++++++++++++++++---- 1 file changed, 31 insertions(+), 4 deletions(-) (limited to 'meta/recipes-bsp/u-boot') diff --git a/meta/recipes-bsp/u-boot/u-boot.inc b/meta/recipes-bsp/u-boot/u-boot.inc index 41803452a8..700d5d39f4 100644 --- a/meta/recipes-bsp/u-boot/u-boot.inc +++ b/meta/recipes-bsp/u-boot/u-boot.inc @@ -19,11 +19,22 @@ python () { raise bb.parse.SkipPackage("because UBOOT_MACHINE is not set") } -UBOOT_IMAGE ?= "u-boot-${MACHINE}-${PV}-${PR}.bin" -UBOOT_BINARY ?= "u-boot.bin" -UBOOT_SYMLINK ?= "u-boot-${MACHINE}.bin" +# Some versions of u-boot use .bin and others use .img. By default use .bin +# but enable individual recipes to change this value. +UBOOT_SUFFIX ?= "bin" +UBOOT_IMAGE ?= "u-boot-${MACHINE}-${PV}-${PR}.${UBOOT_SUFFIX}" +UBOOT_BINARY ?= "u-boot.${UBOOT_SUFFIX}" +UBOOT_SYMLINK ?= "u-boot-${MACHINE}.${UBOOT_SUFFIX}" UBOOT_MAKE_TARGET ?= "all" +# Some versions of u-boot build an SPL (Second Program Loader) image that +# should be packaged along with the u-boot binary as well as placed in the +# deploy directory. For those versions they can set the following variables +# to allow packaging the SPL. +SPL_BINARY ?= "" +SPL_IMAGE ?= "${SPL_BINARY}-${PV}-${PR}" +SPL_SYMLINK ?= "${SPL_BINARY}-${MACHINE}" + do_compile () { unset LDFLAGS unset CFLAGS @@ -36,15 +47,31 @@ do_install () { install -d ${D}/boot install ${S}/${UBOOT_BINARY} ${D}/boot/${UBOOT_IMAGE} ln -sf ${UBOOT_IMAGE} ${D}/boot/${UBOOT_BINARY} + + if [ "x${SPL_BINARY}" != "x" ] + then + install ${S}/${SPL_BINARY} ${D}/boot/${SPL_IMAGE} + ln -sf ${SPL_IMAGE} ${D}/boot/${SPL_BINARY} + fi } FILES_${PN} = "/boot" do_deploy () { - install ${S}/u-boot.bin ${DEPLOYDIR}/${UBOOT_IMAGE} + install -d ${DEPLOYDIR} + install ${S}/${UBOOT_BINARY} ${DEPLOYDIR}/${UBOOT_IMAGE} cd ${DEPLOYDIR} rm -f ${UBOOT_SYMLINK} ln -sf ${UBOOT_IMAGE} ${UBOOT_SYMLINK} + + if [ "x${SPL_BINARY}" != "x" ] + then + install ${S}/${SPL_BINARY} ${DEPLOYDIR}/${SPL_IMAGE} + rm -f ${DEPLOYDIR}/${SPL_BINARY} ${DEPLOYDIR}/${SPL_SYMLINK} + ln -sf ${SPL_IMAGE} ${DEPLOYDIR}/${SPL_BINARY} + ln -sf ${SPL_IMAGE} ${DEPLOYDIR}/${SPL_SYMLINK} + fi } + addtask deploy before do_build after do_compile -- cgit v1.2.3