diff options
Diffstat (limited to 'yocto-poky/meta/recipes-bsp/u-boot')
5 files changed, 569 insertions, 0 deletions
diff --git a/yocto-poky/meta/recipes-bsp/u-boot/u-boot-fw-utils_2015.07.bb b/yocto-poky/meta/recipes-bsp/u-boot/u-boot-fw-utils_2015.07.bb new file mode 100644 index 000000000..0df7a059d --- /dev/null +++ b/yocto-poky/meta/recipes-bsp/u-boot/u-boot-fw-utils_2015.07.bb @@ -0,0 +1,49 @@ +SUMMARY = "U-Boot bootloader fw_printenv/setenv utilities" +LICENSE = "GPLv2+" +LIC_FILES_CHKSUM = "file://Licenses/README;md5=0507cd7da8e7ad6d6701926ec9b84c95" +SECTION = "bootloader" +DEPENDS = "mtd-utils" + +# This revision corresponds to the tag "v2015.07" +# We use the revision in order to avoid having to fetch it from the +# repo during parse +SRCREV = "33711bdd4a4dce942fb5ae85a68899a8357bdd94" + +PV = "v2015.07+git${SRCPV}" + +SRC_URI = "git://git.denx.de/u-boot.git;branch=master" + +S = "${WORKDIR}/git" + +INSANE_SKIP_${PN} = "already-stripped" +EXTRA_OEMAKE_class-target = 'CROSS_COMPILE=${TARGET_PREFIX} CC="${CC} ${CFLAGS} ${LDFLAGS}" V=1' +EXTRA_OEMAKE_class-cross = 'ARCH=${TARGET_ARCH} CC="${CC} ${CFLAGS} ${LDFLAGS}" V=1' + +inherit uboot-config + +do_compile () { + oe_runmake ${UBOOT_MACHINE} + oe_runmake env +} + +do_install () { + install -d ${D}${base_sbindir} + install -d ${D}${sysconfdir} + install -m 755 ${S}/tools/env/fw_printenv ${D}${base_sbindir}/fw_printenv + install -m 755 ${S}/tools/env/fw_printenv ${D}${base_sbindir}/fw_setenv + install -m 0644 ${S}/tools/env/fw_env.config ${D}${sysconfdir}/fw_env.config +} + +do_install_class-cross () { + install -d ${D}${bindir_cross} + install -m 755 ${S}/tools/env/fw_printenv ${D}${bindir_cross}/fw_printenv + install -m 755 ${S}/tools/env/fw_printenv ${D}${bindir_cross}/fw_setenv +} + +SYSROOT_PREPROCESS_FUNCS_class-cross = "uboot_fw_utils_cross" +uboot_fw_utils_cross() { + sysroot_stage_dir ${D}${bindir_cross} ${SYSROOT_DESTDIR}${bindir_cross} +} + +PACKAGE_ARCH = "${MACHINE_ARCH}" +BBCLASSEXTEND = "cross" diff --git a/yocto-poky/meta/recipes-bsp/u-boot/u-boot-mkimage_2015.07.bb b/yocto-poky/meta/recipes-bsp/u-boot/u-boot-mkimage_2015.07.bb new file mode 100644 index 000000000..ba29bbb92 --- /dev/null +++ b/yocto-poky/meta/recipes-bsp/u-boot/u-boot-mkimage_2015.07.bb @@ -0,0 +1,32 @@ +SUMMARY = "U-Boot bootloader image creation tool" +LICENSE = "GPLv2+" +LIC_FILES_CHKSUM = "file://Licenses/README;md5=0507cd7da8e7ad6d6701926ec9b84c95" +SECTION = "bootloader" + +DEPENDS = "openssl" + +# This revision corresponds to the tag "v2015.07" +# We use the revision in order to avoid having to fetch it from the +# repo during parse +SRCREV = "33711bdd4a4dce942fb5ae85a68899a8357bdd94" + +PV = "v2015.07+git${SRCPV}" + +SRC_URI = "git://git.denx.de/u-boot.git;branch=master" + +S = "${WORKDIR}/git" + +EXTRA_OEMAKE = 'CROSS_COMPILE="${TARGET_PREFIX}" CC="${CC} ${CFLAGS} ${LDFLAGS}" STRIP=true V=1' + +do_compile () { + oe_runmake sandbox_defconfig + oe_runmake cross_tools NO_SDL=1 +} + +do_install () { + install -d ${D}${bindir} + install -m 0755 tools/mkimage ${D}${bindir}/uboot-mkimage + ln -sf uboot-mkimage ${D}${bindir}/mkimage +} + +BBCLASSEXTEND = "native nativesdk" diff --git a/yocto-poky/meta/recipes-bsp/u-boot/u-boot.inc b/yocto-poky/meta/recipes-bsp/u-boot/u-boot.inc new file mode 100644 index 000000000..e66ffd145 --- /dev/null +++ b/yocto-poky/meta/recipes-bsp/u-boot/u-boot.inc @@ -0,0 +1,290 @@ +SUMMARY = "Universal Boot Loader for embedded devices" +HOMEPAGE = "http://www.denx.de/wiki/U-Boot/WebHome" +SECTION = "bootloaders" +PROVIDES = "virtual/bootloader" + +LICENSE = "GPLv2+" +LIC_FILES_CHKSUM = "file://Licenses/README;md5=0507cd7da8e7ad6d6701926ec9b84c95" + +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}" V=1' +EXTRA_OEMAKE += 'HOSTCC="${BUILD_CC} ${BUILD_CFLAGS} ${BUILD_LDFLAGS}"' + +PACKAGECONFIG ??= "openssl" +# u-boot will compile its own tools during the build, with specific +# configurations (aka when CONFIG_FIT_SIGNATURE is enabled) openssl is needed as +# a host build dependency. +PACKAGECONFIG[openssl] = ",,openssl-native" + +# 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. +UBOOT_LOCALVERSION ?= "" + +# 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" + +# Output the ELF generated. Some platforms can use the ELF file and directly +# load it (JTAG booting, QEMU) additionally the ELF can be used for debugging +# purposes. +UBOOT_ELF ?= "" +UBOOT_ELF_SUFFIX ?= "elf" +UBOOT_ELF_IMAGE ?= "u-boot-${MACHINE}-${PV}-${PR}.${UBOOT_ELF_SUFFIX}" +UBOOT_ELF_BINARY ?= "u-boot.${UBOOT_ELF_SUFFIX}" +UBOOT_ELF_SYMLINK ?= "u-boot-${MACHINE}.${UBOOT_ELF_SUFFIX}" + +# 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}-${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 [ "${@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 + + unset LDFLAGS + unset CFLAGS + unset CPPFLAGS + + if [ ! -e ${B}/.scmversion -a ! -e ${S}/.scmversion ] + then + echo ${UBOOT_LOCALVERSION} > ${B}/.scmversion + echo ${UBOOT_LOCALVERSION} > ${S}/.scmversion + fi + + if [ "x${UBOOT_CONFIG}" != "x" ] + then + for config in ${UBOOT_MACHINE}; do + i=`expr $i + 1`; + for type in ${UBOOT_CONFIG}; do + j=`expr $j + 1`; + if [ $j -eq $i ] + then + oe_runmake O=${config} ${config} + oe_runmake O=${config} ${UBOOT_MAKE_TARGET} + cp ${S}/${config}/${UBOOT_BINARY} ${S}/${config}/u-boot-${type}.${UBOOT_SUFFIX} + fi + done + unset j + done + unset i + else + oe_runmake ${UBOOT_MACHINE} + oe_runmake ${UBOOT_MAKE_TARGET} + fi + +} + +do_install () { + if [ "x${UBOOT_CONFIG}" != "x" ] + then + for config in ${UBOOT_MACHINE}; do + i=`expr $i + 1`; + for type in ${UBOOT_CONFIG}; do + j=`expr $j + 1`; + if [ $j -eq $i ] + then + install -d ${D}/boot + install ${S}/${config}/u-boot-${type}.${UBOOT_SUFFIX} ${D}/boot/u-boot-${type}-${PV}-${PR}.${UBOOT_SUFFIX} + ln -sf u-boot-${type}-${PV}-${PR}.${UBOOT_SUFFIX} ${D}/boot/${UBOOT_BINARY}-${type} + ln -sf u-boot-${type}-${PV}-${PR}.${UBOOT_SUFFIX} ${D}/boot/${UBOOT_BINARY} + fi + done + unset j + done + unset i + else + install -d ${D}/boot + install ${S}/${UBOOT_BINARY} ${D}/boot/${UBOOT_IMAGE} + ln -sf ${UBOOT_IMAGE} ${D}/boot/${UBOOT_BINARY} + fi + + if [ "x${UBOOT_ELF}" != "x" ] + then + if [ "x${UBOOT_CONFIG}" != "x" ] + then + for config in ${UBOOT_MACHINE}; do + i=`expr $i + 1`; + for type in ${UBOOT_CONFIG}; do + j=`expr $j + 1`; + if [ $j -eq $i ] + then + install ${S}/${config}/${UBOOT_ELF} ${D}/boot/u-boot-${type}-${PV}-${PR}.${UBOOT_ELF_SUFFIX} + ln -sf u-boot-${type}-${PV}-${PR}.${UBOOT_ELF_SUFFIX} ${D}/boot/${UBOOT_BINARY}-${type} + ln -sf u-boot-${type}-${PV}-${PR}.${UBOOT_ELF_SUFFIX} ${D}/boot/${UBOOT_BINARY} + fi + done + unset j + done + unset i + else + install ${S}/${UBOOT_ELF} ${D}/boot/${UBOOT_ELF_IMAGE} + ln -sf ${UBOOT_ELF_IMAGE} ${D}/boot/${UBOOT_ELF_BINARY} + fi + fi + + if [ -e ${WORKDIR}/fw_env.config ] ; then + install -d ${D}${sysconfdir} + install -m 644 ${WORKDIR}/fw_env.config ${D}${sysconfdir}/fw_env.config + fi + + if [ "x${SPL_BINARY}" != "x" ] + then + if [ "x${UBOOT_CONFIG}" != "x" ] + then + for config in ${UBOOT_MACHINE}; do + i=`expr $i + 1`; + for type in ${UBOOT_CONFIG}; do + j=`expr $j + 1`; + if [ $j -eq $i ] + then + install ${S}/${config}/${SPL_BINARY} ${D}/boot/${SPL_IMAGE}-${type}-${PV}-${PR} + ln -sf ${SPL_IMAGE}-${type}-${PV}-${PR} ${D}/boot/${SPL_BINARY}-${type} + ln -sf ${SPL_IMAGE}-${type}-${PV}-${PR} ${D}/boot/${SPL_BINARY} + fi + done + unset j + done + unset i + else + install ${S}/${SPL_BINARY} ${D}/boot/${SPL_IMAGE} + ln -sf ${SPL_IMAGE} ${D}/boot/${SPL_BINARY} + fi + 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}" +# Ensure the split debug part of any elf files are put into dbg +FILES_${PN}-dbg += "/boot/.debug" + +do_deploy () { + if [ "x${UBOOT_CONFIG}" != "x" ] + then + for config in ${UBOOT_MACHINE}; do + i=`expr $i + 1`; + for type in ${UBOOT_CONFIG}; do + j=`expr $j + 1`; + if [ $j -eq $i ] + then + install -d ${DEPLOYDIR} + install ${S}/${config}/u-boot-${type}.${UBOOT_SUFFIX} ${DEPLOYDIR}/u-boot-${type}-${PV}-${PR}.${UBOOT_SUFFIX} + cd ${DEPLOYDIR} + ln -sf u-boot-${type}-${PV}-${PR}.${UBOOT_SUFFIX} ${UBOOT_SYMLINK}-${type} + ln -sf u-boot-${type}-${PV}-${PR}.${UBOOT_SUFFIX} ${UBOOT_SYMLINK} + ln -sf u-boot-${type}-${PV}-${PR}.${UBOOT_SUFFIX} ${UBOOT_BINARY}-${type} + ln -sf u-boot-${type}-${PV}-${PR}.${UBOOT_SUFFIX} ${UBOOT_BINARY} + fi + done + unset j + done + unset i + else + install -d ${DEPLOYDIR} + install ${S}/${UBOOT_BINARY} ${DEPLOYDIR}/${UBOOT_IMAGE} + cd ${DEPLOYDIR} + rm -f ${UBOOT_BINARY} ${UBOOT_SYMLINK} + ln -sf ${UBOOT_IMAGE} ${UBOOT_SYMLINK} + ln -sf ${UBOOT_IMAGE} ${UBOOT_BINARY} + fi + + if [ "x${UBOOT_ELF}" != "x" ] + then + if [ "x${UBOOT_CONFIG}" != "x" ] + then + for config in ${UBOOT_MACHINE}; do + i=`expr $i + 1`; + for type in ${UBOOT_CONFIG}; do + j=`expr $j + 1`; + if [ $j -eq $i ] + then + install ${S}/${config}/${UBOOT_ELF} ${DEPLOYDIR}/u-boot-${type}-${PV}-${PR}.${UBOOT_ELF_SUFFIX} + ln -sf u-boot-${type}-${PV}-${PR}.${UBOOT_ELF_SUFFIX} ${DEPLOYDIR}/${UBOOT_ELF_BINARY}-${type} + ln -sf u-boot-${type}-${PV}-${PR}.${UBOOT_ELF_SUFFIX} ${DEPLOYDIR}/${UBOOT_ELF_BINARY} + ln -sf u-boot-${type}-${PV}-${PR}.${UBOOT_ELF_SUFFIX} ${DEPLOYDIR}/${UBOOT_ELF_SYMLINK}-${type} + ln -sf u-boot-${type}-${PV}-${PR}.${UBOOT_ELF_SUFFIX} ${DEPLOYDIR}/${UBOOT_ELF_SYMLINK} + fi + done + unset j + done + unset i + else + install ${S}/${UBOOT_ELF} ${DEPLOYDIR}/${UBOOT_ELF_IMAGE} + ln -sf ${UBOOT_ELF_IMAGE} ${DEPLOYDIR}/${UBOOT_ELF_BINARY} + ln -sf ${UBOOT_ELF_IMAGE} ${DEPLOYDIR}/${UBOOT_ELF_SYMLINK} + fi + fi + + + if [ "x${SPL_BINARY}" != "x" ] + then + if [ "x${UBOOT_CONFIG}" != "x" ] + then + for config in ${UBOOT_MACHINE}; do + i=`expr $i + 1`; + for type in ${UBOOT_CONFIG}; do + j=`expr $j + 1`; + if [ $j -eq $i ] + then + install ${S}/${config}/${SPL_BINARY} ${DEPLOYDIR}/${SPL_IMAGE}-${type}-${PV}-${PR} + rm -f ${DEPLOYDIR}/${SPL_BINARY} ${DEPLOYDIR}/${SPL_SYMLINK}-${type} + ln -sf ${SPL_IMAGE}-${type}-${PV}-${PR} ${DEPLOYDIR}/${SPL_BINARY}-${type} + ln -sf ${SPL_IMAGE}-${type}-${PV}-${PR} ${DEPLOYDIR}/${SPL_BINARY} + ln -sf ${SPL_IMAGE}-${type}-${PV}-${PR} ${DEPLOYDIR}/${SPL_SYMLINK}-${type} + ln -sf ${SPL_IMAGE}-${type}-${PV}-${PR} ${DEPLOYDIR}/${SPL_SYMLINK} + fi + done + unset j + done + unset i + else + 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 + 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/yocto-poky/meta/recipes-bsp/u-boot/u-boot/0001-u-boot-mpc85xx-u-boot-.lds-remove-_GLOBAL_OFFSET_TAB.patch b/yocto-poky/meta/recipes-bsp/u-boot/u-boot/0001-u-boot-mpc85xx-u-boot-.lds-remove-_GLOBAL_OFFSET_TAB.patch new file mode 100644 index 000000000..dfbcd45be --- /dev/null +++ b/yocto-poky/meta/recipes-bsp/u-boot/u-boot/0001-u-boot-mpc85xx-u-boot-.lds-remove-_GLOBAL_OFFSET_TAB.patch @@ -0,0 +1,184 @@ +From 92598e1515b2ec3851af1f064075d0457f01272d Mon Sep 17 00:00:00 2001 +From: Zhenhua Luo <zhenhua.luo@freescale.com> +Date: Mon, 9 Feb 2015 18:33:56 +0800 +Subject: [PATCH] powerpc/cpu/*/u-boot*.lds: remove _GLOBAL_OFFSET_TABLE_ + definition +Organization: O.S. Systems Software LTDA. + +In binutils-2.25, the _GLOBAL_OFFSET_TABLE_ symbols defined by PROVIDE in +u-boot.lds overrides the linker built-in symbols +(https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;a=commitdiff;h=b893397a4b1316610f49819344817715e4305de9), +so the linker is treating _GLOBAL_OFFSET_TABLE_ as a definition into the .reloc section. + +To align with the change of binutils-2.25, the _GLOBAL_OFFSET_TABLE_ symbol +should not be defined in sections, and the symbols in linker generated .got +section should be used(https://sourceware.org/ml/binutils/2008-09/msg00122.html). + +Fixed the following build errors with binutils-2.25: +| powerpc-poky-linux-gnuspe-ld.bfd: _GLOBAL_OFFSET_TABLE_ not defined in linker created .got + +Signed-off-by: Zhenhua Luo <zhenhua.luo@freescale.com> + +Upstream-Status: Pending +--- + arch/powerpc/cpu/mpc512x/u-boot.lds | 1 - + arch/powerpc/cpu/mpc5xx/u-boot.lds | 1 - + arch/powerpc/cpu/mpc5xxx/u-boot.lds | 1 - + arch/powerpc/cpu/mpc8260/u-boot.lds | 1 - + arch/powerpc/cpu/mpc83xx/u-boot-spl.lds | 1 - + arch/powerpc/cpu/mpc83xx/u-boot.lds | 1 - + arch/powerpc/cpu/mpc85xx/u-boot-nand.lds | 1 - + arch/powerpc/cpu/mpc85xx/u-boot-nand_spl.lds | 1 - + arch/powerpc/cpu/mpc85xx/u-boot-spl.lds | 1 - + arch/powerpc/cpu/mpc85xx/u-boot.lds | 1 - + arch/powerpc/cpu/mpc86xx/u-boot.lds | 1 - + arch/powerpc/cpu/ppc4xx/u-boot.lds | 1 - + 12 files changed, 12 deletions(-) + +diff --git a/arch/powerpc/cpu/mpc512x/u-boot.lds b/arch/powerpc/cpu/mpc512x/u-boot.lds +index 9658b21..b32f74e 100644 +--- a/arch/powerpc/cpu/mpc512x/u-boot.lds ++++ b/arch/powerpc/cpu/mpc512x/u-boot.lds +@@ -24,7 +24,6 @@ SECTIONS + _GOT2_TABLE_ = .; + KEEP(*(.got2)) + KEEP(*(.got)) +- PROVIDE(_GLOBAL_OFFSET_TABLE_ = . + 4); + _FIXUP_TABLE_ = .; + KEEP(*(.fixup)) + *(.fixup) +diff --git a/arch/powerpc/cpu/mpc5xx/u-boot.lds b/arch/powerpc/cpu/mpc5xx/u-boot.lds +index 7198465..6a53571 100644 +--- a/arch/powerpc/cpu/mpc5xx/u-boot.lds ++++ b/arch/powerpc/cpu/mpc5xx/u-boot.lds +@@ -33,7 +33,6 @@ SECTIONS + _GOT2_TABLE_ = .; + KEEP(*(.got2)) + KEEP(*(.got)) +- PROVIDE(_GLOBAL_OFFSET_TABLE_ = . + 4); + _FIXUP_TABLE_ = .; + KEEP(*(.fixup)) + } +diff --git a/arch/powerpc/cpu/mpc5xxx/u-boot.lds b/arch/powerpc/cpu/mpc5xxx/u-boot.lds +index cd9e23f..aa80d3d 100644 +--- a/arch/powerpc/cpu/mpc5xxx/u-boot.lds ++++ b/arch/powerpc/cpu/mpc5xxx/u-boot.lds +@@ -28,7 +28,6 @@ SECTIONS + _GOT2_TABLE_ = .; + KEEP(*(.got2)) + KEEP(*(.got)) +- PROVIDE(_GLOBAL_OFFSET_TABLE_ = . + 4); + _FIXUP_TABLE_ = .; + KEEP(*(.fixup)) + } +diff --git a/arch/powerpc/cpu/mpc8260/u-boot.lds b/arch/powerpc/cpu/mpc8260/u-boot.lds +index 50cbf85..469fc29 100644 +--- a/arch/powerpc/cpu/mpc8260/u-boot.lds ++++ b/arch/powerpc/cpu/mpc8260/u-boot.lds +@@ -27,7 +27,6 @@ SECTIONS + _GOT2_TABLE_ = .; + KEEP(*(.got2)) + KEEP(*(.got)) +- PROVIDE(_GLOBAL_OFFSET_TABLE_ = . + 4); + _FIXUP_TABLE_ = .; + KEEP(*(.fixup)) + } +diff --git a/arch/powerpc/cpu/mpc83xx/u-boot-spl.lds b/arch/powerpc/cpu/mpc83xx/u-boot-spl.lds +index 774772b..4101eaf 100644 +--- a/arch/powerpc/cpu/mpc83xx/u-boot-spl.lds ++++ b/arch/powerpc/cpu/mpc83xx/u-boot-spl.lds +@@ -24,7 +24,6 @@ SECTIONS + _GOT2_TABLE_ = .; + KEEP(*(.got2)) + KEEP(*(.got)) +- PROVIDE(_GLOBAL_OFFSET_TABLE_ = . + 4); + } + __got2_entries = ((_GLOBAL_OFFSET_TABLE_ - _GOT2_TABLE_) >> 2) - 1; + +diff --git a/arch/powerpc/cpu/mpc83xx/u-boot.lds b/arch/powerpc/cpu/mpc83xx/u-boot.lds +index 3c177fa..dbd8bbe 100644 +--- a/arch/powerpc/cpu/mpc83xx/u-boot.lds ++++ b/arch/powerpc/cpu/mpc83xx/u-boot.lds +@@ -26,7 +26,6 @@ SECTIONS + _GOT2_TABLE_ = .; + KEEP(*(.got2)) + KEEP(*(.got)) +- PROVIDE(_GLOBAL_OFFSET_TABLE_ = . + 4); + _FIXUP_TABLE_ = .; + KEEP(*(.fixup)) + } +diff --git a/arch/powerpc/cpu/mpc85xx/u-boot-nand.lds b/arch/powerpc/cpu/mpc85xx/u-boot-nand.lds +index f933b21..0399f93 100644 +--- a/arch/powerpc/cpu/mpc85xx/u-boot-nand.lds ++++ b/arch/powerpc/cpu/mpc85xx/u-boot-nand.lds +@@ -44,7 +44,6 @@ SECTIONS + _GOT2_TABLE_ = .; + KEEP(*(.got2)) + KEEP(*(.got)) +- PROVIDE(_GLOBAL_OFFSET_TABLE_ = . + 4); + _FIXUP_TABLE_ = .; + KEEP(*(.fixup)) + } +diff --git a/arch/powerpc/cpu/mpc85xx/u-boot-nand_spl.lds b/arch/powerpc/cpu/mpc85xx/u-boot-nand_spl.lds +index b83c553..f044564 100644 +--- a/arch/powerpc/cpu/mpc85xx/u-boot-nand_spl.lds ++++ b/arch/powerpc/cpu/mpc85xx/u-boot-nand_spl.lds +@@ -22,7 +22,6 @@ SECTIONS + _GOT2_TABLE_ = .; + KEEP(*(.got2)) + KEEP(*(.got)) +- PROVIDE(_GLOBAL_OFFSET_TABLE_ = . + 4); + _FIXUP_TABLE_ = .; + KEEP(*(.fixup)) + } +diff --git a/arch/powerpc/cpu/mpc85xx/u-boot-spl.lds b/arch/powerpc/cpu/mpc85xx/u-boot-spl.lds +index 5ae7b3e..889a4c2 100644 +--- a/arch/powerpc/cpu/mpc85xx/u-boot-spl.lds ++++ b/arch/powerpc/cpu/mpc85xx/u-boot-spl.lds +@@ -29,7 +29,6 @@ SECTIONS + _GOT2_TABLE_ = .; + KEEP(*(.got2)) + KEEP(*(.got)) +- PROVIDE(_GLOBAL_OFFSET_TABLE_ = . + 4); + _FIXUP_TABLE_ = .; + KEEP(*(.fixup)) + } +diff --git a/arch/powerpc/cpu/mpc85xx/u-boot.lds b/arch/powerpc/cpu/mpc85xx/u-boot.lds +index 2cf0b25..f15eaf3 100644 +--- a/arch/powerpc/cpu/mpc85xx/u-boot.lds ++++ b/arch/powerpc/cpu/mpc85xx/u-boot.lds +@@ -50,7 +50,6 @@ SECTIONS + _GOT2_TABLE_ = .; + KEEP(*(.got2)) + KEEP(*(.got)) +- PROVIDE(_GLOBAL_OFFSET_TABLE_ = . + 4); + _FIXUP_TABLE_ = .; + KEEP(*(.fixup)) + } +diff --git a/arch/powerpc/cpu/mpc86xx/u-boot.lds b/arch/powerpc/cpu/mpc86xx/u-boot.lds +index 58467c2..6c48f40 100644 +--- a/arch/powerpc/cpu/mpc86xx/u-boot.lds ++++ b/arch/powerpc/cpu/mpc86xx/u-boot.lds +@@ -32,7 +32,6 @@ SECTIONS + _GOT2_TABLE_ = .; + KEEP(*(.got2)) + KEEP(*(.got)) +- PROVIDE(_GLOBAL_OFFSET_TABLE_ = . + 4); + _FIXUP_TABLE_ = .; + KEEP(*(.fixup)) + } +diff --git a/arch/powerpc/cpu/ppc4xx/u-boot.lds b/arch/powerpc/cpu/ppc4xx/u-boot.lds +index 1980508..55dd4e1 100644 +--- a/arch/powerpc/cpu/ppc4xx/u-boot.lds ++++ b/arch/powerpc/cpu/ppc4xx/u-boot.lds +@@ -46,7 +46,6 @@ SECTIONS + _GOT2_TABLE_ = .; + KEEP(*(.got2)) + KEEP(*(.got)) +- PROVIDE(_GLOBAL_OFFSET_TABLE_ = . + 4); + _FIXUP_TABLE_ = .; + KEEP(*(.fixup)) + } +-- +2.4.6 + diff --git a/yocto-poky/meta/recipes-bsp/u-boot/u-boot_2015.07.bb b/yocto-poky/meta/recipes-bsp/u-boot/u-boot_2015.07.bb new file mode 100644 index 000000000..4746c33ec --- /dev/null +++ b/yocto-poky/meta/recipes-bsp/u-boot/u-boot_2015.07.bb @@ -0,0 +1,14 @@ +require u-boot.inc + +DEPENDS += "dtc-native" + +# This revision corresponds to the tag "v2015.07" +# We use the revision in order to avoid having to fetch it from the +# repo during parse +SRCREV = "33711bdd4a4dce942fb5ae85a68899a8357bdd94" + +SRC_URI += "file://0001-u-boot-mpc85xx-u-boot-.lds-remove-_GLOBAL_OFFSET_TAB.patch" + +PV = "v2015.07+git${SRCPV}" + +EXTRA_OEMAKE_append = " KCFLAGS=-fgnu89-inline" |