From e374550e51e79e4ba44ae32523da33dc0ed473a4 Mon Sep 17 00:00:00 2001 From: Vishnu Patekar Date: Thu, 1 Jan 2015 22:58:47 +0530 Subject: [PATCH] added support for mainline u-boot 2015.01 Signed-off-by: VishnuPatekar --- conf/machine/include/sunxi.inc | 2 -- recipes-bsp/u-boot/u-boot.inc | 51 ++++++++++++++++++++++++-------- recipes-bsp/u-boot/u-boot_git.bb | 11 ++++--- 3 files changed, 45 insertions(+), 19 deletions(-) diff --git a/conf/machine/include/sunxi.inc b/conf/machine/include/sunxi.inc index 245cc9f..03b9887 100644 --- a/conf/machine/include/sunxi.inc +++ b/conf/machine/include/sunxi.inc @@ -14,5 +14,3 @@ IMAGE_CLASSES += "sdcard_image-sunxi" IMAGE_FSTYPES += "ext3 tar.gz sunxi-sdimg" MACHINE_EXTRA_RRECOMMENDS = "kernel-modules" - -UBOOT_LOCALVERSION = "-g${@d.getVar('SRCPV', True).partition('+')[2][0:7]}" \ No newline at end of file diff --git a/recipes-bsp/u-boot/u-boot.inc b/recipes-bsp/u-boot/u-boot.inc index 6bbe457..602b71f 100644 --- a/recipes-bsp/u-boot/u-boot.inc +++ b/recipes-bsp/u-boot/u-boot.inc @@ -1,21 +1,22 @@ -DESCRIPTION = "U-Boot - the Universal Boot Loader" +SUMMARY = "Universal Boot Loader for embedded devices" HOMEPAGE = "http://www.denx.de/wiki/U-Boot/WebHome" SECTION = "bootloaders" PROVIDES = "virtual/bootloader" -inherit deploy +LICENSE = "GPLv2+" +LIC_FILES_CHKSUM = "file://COPYING;md5=1707d6db1d42237583f50183a5651ecb \ + file://README;beginline=1;endline=22;md5=78b195c11cb6ef63e6985140db7d7bab" + +SRC_URI = "git://git.denx.de/u-boot.git;branch=master" + +S = "${WORKDIR}/git" + +PACKAGE_ARCH = "${MACHINE_ARCH}" + +inherit uboot-config deploy EXTRA_OEMAKE = 'CROSS_COMPILE=${TARGET_PREFIX} CC="${TARGET_PREFIX}gcc ${TOOLCHAIN_OPTIONS}"' -python () { - if not d.getVar("UBOOT_MACHINE", True): - PN = d.getVar("PN", True) - FILE = os.path.basename(d.getVar("FILE", True)) - bb.debug(1, "To build %s, see %s for instructions on \ - setting up your machine config" % (PN, FILE)) - raise bb.parse.SkipPackage("because UBOOT_MACHINE is not set") -} - # Allow setting an additional version string that will be picked up by the # u-boot build system and appended to the u-boot version. If the .scmversion # file already exists it will not be overwritten. @@ -37,8 +38,19 @@ SPL_BINARY ?= "" SPL_IMAGE ?= "${SPL_BINARY}-${MACHINE}-${PV}-${PR}" SPL_SYMLINK ?= "${SPL_BINARY}-${MACHINE}" +# Additional environment variables or a script can be installed alongside +# u-boot to be used automatically on boot. This file, typically 'uEnv.txt' +# or 'boot.scr', should be packaged along with u-boot as well as placed in the +# deploy directory. Machine configurations needing one of these files should +# include it in the SRC_URI and set the UBOOT_ENV parameter. +UBOOT_ENV_SUFFIX ?= "txt" +UBOOT_ENV ?= "" +UBOOT_ENV_BINARY ?= "${UBOOT_ENV}.${UBOOT_ENV_SUFFIX}" +UBOOT_ENV_IMAGE ?= "${UBOOT_ENV}-${MACHINE}-${PV}-${PR}.${UBOOT_ENV_SUFFIX}" +UBOOT_ENV_SYMLINK ?= "${UBOOT_ENV}-${MACHINE}.${UBOOT_ENV_SUFFIX}" + do_compile () { - if [ "${@base_contains('DISTRO_FEATURES', 'ld-is-gold', 'ld-is-gold', '', d)}" = "ld-is-gold" ] ; then + if [ "${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-gold', 'ld-is-gold', '', d)}" = "ld-is-gold" ] ; then sed -i 's/$(CROSS_COMPILE)ld$/$(CROSS_COMPILE)ld.bfd/g' config.mk fi @@ -71,10 +83,15 @@ do_install () { install ${S}/${SPL_BINARY} ${D}/boot/${SPL_IMAGE} ln -sf ${SPL_IMAGE} ${D}/boot/${SPL_BINARY} fi + + if [ "x${UBOOT_ENV}" != "x" ] + then + install ${WORKDIR}/${UBOOT_ENV_BINARY} ${D}/boot/${UBOOT_ENV_IMAGE} + ln -sf ${UBOOT_ENV_IMAGE} ${D}/boot/${UBOOT_ENV_BINARY} + fi } FILES_${PN} = "/boot ${sysconfdir}" -FILESPATH =. "${FILE_DIRNAME}/u-boot-git/${MACHINE}:" do_deploy () { install -d ${DEPLOYDIR} @@ -92,6 +109,14 @@ do_deploy () { ln -sf ${SPL_IMAGE} ${DEPLOYDIR}/${SPL_BINARY} ln -sf ${SPL_IMAGE} ${DEPLOYDIR}/${SPL_SYMLINK} fi + + if [ "x${UBOOT_ENV}" != "x" ] + then + install ${WORKDIR}/${UBOOT_ENV_BINARY} ${DEPLOYDIR}/${UBOOT_ENV_IMAGE} + rm -f ${DEPLOYDIR}/${UBOOT_ENV_BINARY} ${DEPLOYDIR}/${UBOOT_ENV_SYMLINK} + ln -sf ${UBOOT_ENV_IMAGE} ${DEPLOYDIR}/${UBOOT_ENV_BINARY} + ln -sf ${UBOOT_ENV_IMAGE} ${DEPLOYDIR}/${UBOOT_ENV_SYMLINK} + fi } addtask deploy before do_build after do_compile diff --git a/recipes-bsp/u-boot/u-boot_git.bb b/recipes-bsp/u-boot/u-boot_git.bb index 891fb59..bd4f445 100644 --- a/recipes-bsp/u-boot/u-boot_git.bb +++ b/recipes-bsp/u-boot/u-boot_git.bb @@ -4,7 +4,7 @@ LICENSE = "GPLv2" LIC_FILES_CHKSUM = "file://Licenses/gpl-2.0.txt;md5=b234ee4d69f5fce4486a80fdaf4a4263" # No patches for other machines yet -COMPATIBLE_MACHINE = "(mele|meleg|olinuxino-a13|olinuxino-a10s|olinuxino-a10|olinuxino-a20|olinuxino-a20som|olinuxino-a20lime|cubieboard|cubieboard2|cubietruck)" +COMPATIBLE_MACHINE = "(mele|meleg|olinuxino-a13|olinuxino-a10s|olinuxino-a10|olinuxino-a20|olinuxino-a20som|olinuxino-a20lime|olinuxino-a20lime2|cubieboard|cubieboard2|cubietruck)" DEFAULT_PREFERENCE_mele= "1" DEFAULT_PREFERENCE_meleg= "1" @@ -14,15 +14,18 @@ DEFAULT_PREFERENCE_olinuxino-a10= "1" DEFAULT_PREFERENCE_olinuxino-a20= "1" DEFAULT_PREFERENCE_olinuxino-a20som= "1" DEFAULT_PREFERENCE_olinuxino-a20lime= "1" +DEFAULT_PREFERENCE_olinuxino-a20lime2= "1" DEFAULT_PREFERENCE_cubieboard="1" DEFAULT_PREFERENCE_cubieboard2="1" DEFAULT_PREFERENCE_cubietruck="1" -SRC_URI = "git://github.com/linux-sunxi/u-boot-sunxi.git;protocol=git;branch=sunxi" +SRC_URI = "git://git.denx.de/u-boot.git;branch=master" PE = "1" -PV = "v2014.04+git${SRCPV}" -SRCREV = "ee425f94b488a4304c136a171bb8fdec0d835032" +PV = "v2015.01+git${SRCPV}" + +# Corresponds to tag v2015.01-rc3 +SRCREV = "32fdf0e4d82bdca5d64d86330e461e59685f9959" S = "${WORKDIR}/git"