[v2] u-boot: update to version 2015.01

Submitted by Denys Dmytriyenko on Feb. 10, 2015, 4:02 p.m. | Patch ID: 88501

Details

Message ID 1423584126-27786-1-git-send-email-denis@denix.org
State New
Headers show

Commit Message

Denys Dmytriyenko Feb. 10, 2015, 4:02 p.m.
From: Denys Dmytriyenko <denys@ti.com>

Signed-off-by: Denys Dmytriyenko <denys@ti.com>
---
v2 - explicitly depend u-boot-mkimage-native on openssl-native

 .../0001-tools-env-fix-build-error.patch           | 36 ++++++++++++++++++++++
 ...utils_2014.07.bb => u-boot-fw-utils_2015.01.bb} | 21 +++++++------
 ...kimage_2014.07.bb => u-boot-mkimage_2015.01.bb} | 21 ++++++-------
 meta/recipes-bsp/u-boot/u-boot.inc                 |  2 +-
 .../{u-boot_2014.07.bb => u-boot_2015.01.bb}       |  6 ++--
 5 files changed, 62 insertions(+), 24 deletions(-)
 create mode 100644 meta/recipes-bsp/u-boot/u-boot-fw-utils/0001-tools-env-fix-build-error.patch
 rename meta/recipes-bsp/u-boot/{u-boot-fw-utils_2014.07.bb => u-boot-fw-utils_2015.01.bb} (58%)
 rename meta/recipes-bsp/u-boot/{u-boot-mkimage_2014.07.bb => u-boot-mkimage_2015.01.bb} (45%)
 rename meta/recipes-bsp/u-boot/{u-boot_2014.07.bb => u-boot_2015.01.bb} (50%)

Patch hide | download patch | download mbox

diff --git a/meta/recipes-bsp/u-boot/u-boot-fw-utils/0001-tools-env-fix-build-error.patch b/meta/recipes-bsp/u-boot/u-boot-fw-utils/0001-tools-env-fix-build-error.patch
new file mode 100644
index 0000000..381b505
--- /dev/null
+++ b/meta/recipes-bsp/u-boot/u-boot-fw-utils/0001-tools-env-fix-build-error.patch
@@ -0,0 +1,36 @@ 
+From ee2d75513452aa6d5306fd380104adc8a2f6d8f2 Mon Sep 17 00:00:00 2001
+From: Masahiro Yamada <yamada.m@jp.panasonic.com>
+Date: Wed, 3 Dec 2014 10:22:50 +0900
+Subject: [PATCH] tools: env: fix build error
+
+Since CONFIG_SYS_ARCH, CONFIG_SYS_CPU, ... were moved to Kconfig,
+tools/env/fw_printenv fails to build if CONFIG_ENV_VARS_UBOOT_CONFIG
+is defined.
+(I do not think this is the right way to fix the problem, but
+for now I do not have enough time to take a close look.)
+
+Upstream-Status: Submitted [http://patchwork.ozlabs.org/patch/417192/]
+
+Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
+Reported-by: Denys Dmytriyenko <denys@ti.com>
+---
+ tools/env/fw_env.c | 3 +++
+ 1 file changed, 3 insertions(+)
+
+diff --git a/tools/env/fw_env.c b/tools/env/fw_env.c
+index 1173eea..698fe51 100644
+--- a/tools/env/fw_env.c
++++ b/tools/env/fw_env.c
+@@ -8,6 +8,9 @@
+  * SPDX-License-Identifier:	GPL-2.0+
+  */
+ 
++/* FIXME: Do not include this */
++#include <linux/kconfig.h>
++
+ #include <errno.h>
+ #include <env_flags.h>
+ #include <fcntl.h>
+-- 
+2.2.0
+
diff --git a/meta/recipes-bsp/u-boot/u-boot-fw-utils_2014.07.bb b/meta/recipes-bsp/u-boot/u-boot-fw-utils_2015.01.bb
similarity index 58%
rename from meta/recipes-bsp/u-boot/u-boot-fw-utils_2014.07.bb
rename to meta/recipes-bsp/u-boot/u-boot-fw-utils_2015.01.bb
index 9a304c8..17453ca 100644
--- a/meta/recipes-bsp/u-boot/u-boot-fw-utils_2014.07.bb
+++ b/meta/recipes-bsp/u-boot/u-boot-fw-utils_2015.01.bb
@@ -1,21 +1,24 @@ 
 SUMMARY = "U-Boot bootloader fw_printenv/setenv utilities"
 LICENSE = "GPLv2+"
-LIC_FILES_CHKSUM = "file://Licenses/README;md5=025bf9f768cbcb1a165dbe1a110babfb"
+LIC_FILES_CHKSUM = "file://Licenses/README;md5=c7383a594871c03da76b3707929d2919"
 SECTION = "bootloader"
 DEPENDS = "mtd-utils"
 
-# This revision corresponds to the tag "v2014.07"
+# This revision corresponds to the tag "v2015.01"
 # We use the revision in order to avoid having to fetch it from the
 # repo during parse
-SRCREV = "524123a70761110c5cf3ccc5f52f6d4da071b959"
+SRCREV = "92fa7f53f1f3f03296f8ffb14bdf1baefab83368"
 
-PV = "v2014.07+git${SRCPV}"
+PV = "v2015.01+git${SRCPV}"
 
-SRC_URI = "git://git.denx.de/u-boot.git;branch=master;protocol=git"
+SRC_URI = "git://git.denx.de/u-boot.git;branch=master;protocol=git \
+           file://0001-tools-env-fix-build-error.patch"
 
 S = "${WORKDIR}/git"
 
 INSANE_SKIP_${PN} = "already-stripped"
+EXTRA_OEMAKE_class-target = 'CROSS_COMPILE=${TARGET_PREFIX} CC="${CC}"'
+EXTRA_OEMAKE_class-cross = 'ARCH=${TARGET_ARCH}'
 
 inherit uboot-config
 
@@ -33,14 +36,14 @@  do_install () {
 }
 
 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
+	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}
+	sysroot_stage_dir ${D}${bindir_cross} ${SYSROOT_DESTDIR}${bindir_cross}
 }
 
 PACKAGE_ARCH = "${MACHINE_ARCH}"
diff --git a/meta/recipes-bsp/u-boot/u-boot-mkimage_2014.07.bb b/meta/recipes-bsp/u-boot/u-boot-mkimage_2015.01.bb
similarity index 45%
rename from meta/recipes-bsp/u-boot/u-boot-mkimage_2014.07.bb
rename to meta/recipes-bsp/u-boot/u-boot-mkimage_2015.01.bb
index eabf680..e68b5ee 100644
--- a/meta/recipes-bsp/u-boot/u-boot-mkimage_2014.07.bb
+++ b/meta/recipes-bsp/u-boot/u-boot-mkimage_2015.01.bb
@@ -1,28 +1,27 @@ 
 SUMMARY = "U-Boot bootloader image creation tool"
 LICENSE = "GPLv2+"
-LIC_FILES_CHKSUM = "file://Licenses/README;md5=025bf9f768cbcb1a165dbe1a110babfb"
+LIC_FILES_CHKSUM = "file://Licenses/README;md5=c7383a594871c03da76b3707929d2919"
 SECTION = "bootloader"
 
-# This revision corresponds to the tag "v2014.07"
+DEPENDS = "openssl"
+DEPENDS_class-native = "openssl-native"
+
+# This revision corresponds to the tag "v2015.01"
 # We use the revision in order to avoid having to fetch it from the
 # repo during parse
-SRCREV = "524123a70761110c5cf3ccc5f52f6d4da071b959"
+SRCREV = "92fa7f53f1f3f03296f8ffb14bdf1baefab83368"
 
-PV = "v2014.07+git${SRCPV}"
+PV = "v2015.01+git${SRCPV}"
 
 SRC_URI = "git://git.denx.de/u-boot.git;branch=master;protocol=git"
 
 S = "${WORKDIR}/git"
 
-EXTRA_OEMAKE = 'HOSTCC="${CC}" HOSTLD="${LD}" HOSTLDFLAGS="${LDFLAGS}" HOSTSTRIP=true'
+EXTRA_OEMAKE = 'CROSS_COMPILE="${TARGET_PREFIX}" CC="${CC}" STRIP=true'
 
 do_compile () {
-	# Make sure the recompile is OK
-	rm -f ${B}/tools/.depend
-
-	make HOSTCC="${BUILD_CC}" HOSTLD="${BUILD_LD}" HOSTLDFLAGS="${BUILD_LDFLAGS}" HOSTSTRIP=true dot-config=0 scripts_basic
-	sed 's/^tools-only: scripts_basic /tools-only: /' -i Makefile
-	oe_runmake tools-only
+	oe_runmake sandbox_defconfig
+	oe_runmake cross_tools NO_SDL=1
 }
 
 do_install () {
diff --git a/meta/recipes-bsp/u-boot/u-boot.inc b/meta/recipes-bsp/u-boot/u-boot.inc
index 58725fa..5c6cb4e 100644
--- a/meta/recipes-bsp/u-boot/u-boot.inc
+++ b/meta/recipes-bsp/u-boot/u-boot.inc
@@ -4,7 +4,7 @@  SECTION = "bootloaders"
 PROVIDES = "virtual/bootloader"
 
 LICENSE = "GPLv2+"
-LIC_FILES_CHKSUM = "file://Licenses/README;md5=025bf9f768cbcb1a165dbe1a110babfb"
+LIC_FILES_CHKSUM = "file://Licenses/README;md5=c7383a594871c03da76b3707929d2919"
 
 SRC_URI = "git://git.denx.de/u-boot.git;branch=master"
 
diff --git a/meta/recipes-bsp/u-boot/u-boot_2014.07.bb b/meta/recipes-bsp/u-boot/u-boot_2015.01.bb
similarity index 50%
rename from meta/recipes-bsp/u-boot/u-boot_2014.07.bb
rename to meta/recipes-bsp/u-boot/u-boot_2015.01.bb
index 44cc52e..6feac31 100644
--- a/meta/recipes-bsp/u-boot/u-boot_2014.07.bb
+++ b/meta/recipes-bsp/u-boot/u-boot_2015.01.bb
@@ -2,8 +2,8 @@  require u-boot.inc
 
 DEPENDS += "dtc-native"
 
-# This revision corresponds to the tag "v2014.07"
+# This revision corresponds to the tag "v2015.01"
 # We use the revision in order to avoid having to fetch it from the repo during parse
-SRCREV = "524123a70761110c5cf3ccc5f52f6d4da071b959"
+SRCREV = "92fa7f53f1f3f03296f8ffb14bdf1baefab83368"
 
-PV = "v2014.07+git${SRCPV}"
+PV = "v2015.01+git${SRCPV}"

Comments

Ross Burton Feb. 10, 2015, 4:16 p.m.
Hi Denys,

On 10 February 2015 at 16:02, Denys Dmytriyenko <denis@denix.org> wrote:

> +DEPENDS = "openssl"
> +DEPENDS_class-native = "openssl-native"
>

That *really* shouldn't be required. :(

And indeed, the old patch with -e shows that it isn't:

# $DEPENDS [6 operations]
#   set /home/ross/Yocto/poky/meta/conf/bitbake.conf:246
#     ""
#   set /home/ross/Yocto/poky/meta/conf/documentation.conf:135
#     [doc] "Lists a recipe's build-time dependencies (i.e. other recipe
files)."
#   _prepend /home/ross/Yocto/poky/meta/classes/base.bbclass:81
#     "${BASEDEPENDS} "
#   set /home/ross/Yocto/poky/meta/recipes-bsp/u-boot/
u-boot-mkimage_2015.01.bb:6
#     "openssl"
#   set native_virtclass_handler(e):27 [map_dependencies]
#     "openssl-native"
#   set data_smart.py:437 [finalize]
#     "${BASEDEPENDS} openssl-native"
# pre-expansion value:
#   "${BASEDEPENDS} openssl-native"
DEPENDS=" openssl-native"

This is *very* strange.  When the AB is free I'll do another rebuild to see
what happens under load.  Was the DEPENDS_class-native change the only
difference between v1 and v2?

Ross
Otavio Salvador Feb. 10, 2015, 4:17 p.m.
Hello Ross,

On Tue, Feb 10, 2015 at 2:16 PM, Burton, Ross <ross.burton@intel.com> wrote:
> On 10 February 2015 at 16:02, Denys Dmytriyenko <denis@denix.org> wrote:
>>
>> +DEPENDS = "openssl"
>> +DEPENDS_class-native = "openssl-native"
>
>
> That *really* shouldn't be required. :(

I agree it is not needed and it does seem to be a fail in meta-fsl-ppc
which should be fixed there.
Denys Dmytriyenko Feb. 10, 2015, 4:26 p.m.
On Tue, Feb 10, 2015 at 04:16:00PM +0000, Burton, Ross wrote:
> Hi Denys,
> 
> On 10 February 2015 at 16:02, Denys Dmytriyenko <denis@denix.org> wrote:
> 
> > +DEPENDS = "openssl"
> > +DEPENDS_class-native = "openssl-native"
> >
> 
> That *really* shouldn't be required. :(
> 
> And indeed, the old patch with -e shows that it isn't:

Yes, I understand it completely and my tests show the same exact -e output. 
But since there were no other suggestions, I decided to cheat a bit... :)


> # $DEPENDS [6 operations]
> #   set /home/ross/Yocto/poky/meta/conf/bitbake.conf:246
> #     ""
> #   set /home/ross/Yocto/poky/meta/conf/documentation.conf:135
> #     [doc] "Lists a recipe's build-time dependencies (i.e. other recipe
> files)."
> #   _prepend /home/ross/Yocto/poky/meta/classes/base.bbclass:81
> #     "${BASEDEPENDS} "
> #   set /home/ross/Yocto/poky/meta/recipes-bsp/u-boot/
> u-boot-mkimage_2015.01.bb:6
> #     "openssl"
> #   set native_virtclass_handler(e):27 [map_dependencies]
> #     "openssl-native"
> #   set data_smart.py:437 [finalize]
> #     "${BASEDEPENDS} openssl-native"
> # pre-expansion value:
> #   "${BASEDEPENDS} openssl-native"
> DEPENDS=" openssl-native"
> 
> This is *very* strange.  When the AB is free I'll do another rebuild to see
> what happens under load.

Thanks a lot! Looking forward for the results.


> Was the DEPENDS_class-native change the only difference between v1 and v2?

Yes, that was the only change.
Denys Dmytriyenko Feb. 10, 2015, 4:29 p.m.
On Tue, Feb 10, 2015 at 02:17:55PM -0200, Otavio Salvador wrote:
> Hello Ross,
> 
> On Tue, Feb 10, 2015 at 2:16 PM, Burton, Ross <ross.burton@intel.com> wrote:
> > On 10 February 2015 at 16:02, Denys Dmytriyenko <denis@denix.org> wrote:
> >>
> >> +DEPENDS = "openssl"
> >> +DEPENDS_class-native = "openssl-native"
> >
> >
> > That *really* shouldn't be required. :(
> 
> I agree it is not needed and it does seem to be a fail in meta-fsl-ppc
> which should be fixed there.

? Are you saying it's meta-fsl-ppc specific issue?
Ross Burton Feb. 10, 2015, 4:38 p.m.
On 10 February 2015 at 16:29, Denys Dmytriyenko <denis@denix.org> wrote:

> > >> +DEPENDS_class-native = "openssl-native"
> > >
> > >
> > > That *really* shouldn't be required. :(
> >
> > I agree it is not needed and it does seem to be a fail in meta-fsl-ppc
> > which should be fixed there.
>
> ? Are you saying it's meta-fsl-ppc specific issue?


I just replicated with qemuarm and interestingly with zero tasks happening
at the same time.  I'm wondering if there's a file being written with an
old sysroot in that isn't being deleted. I'll dig quickly now.

Ross
Ross Burton Feb. 10, 2015, 4:48 p.m.
On 10 February 2015 at 16:38, Burton, Ross <ross.burton@intel.com> wrote:

> ? Are you saying it's meta-fsl-ppc specific issue?
>
>
> I just replicated with qemuarm and interestingly with zero tasks happening
> at the same time.  I'm wondering if there's a file being written with an
> old sysroot in that isn't being deleted. I'll dig quickly now.


Passing V=1 to EXTRA_OEMAKE (should do this by default as quite logs are
useless for debugging) shows:

|   gcc  -Wp,-MD,tools/.mkimage.o.d -Wall -Wstrict-prototypes -O2
-fomit-frame-pointer   -DCONFIG_FIT_SIGNATURE -include
./include/libfdt_env.h -idirafterinclude -idirafter./arch/sandbox/include
-I./lib/libfdt -I./tools -DCONFIG_SYS_TEXT_BASE=0 -DUSE_HOSTCC
-D__KERNEL_STRICT_NAMES -D_GNU_SOURCE  -c -o tools/mkimage.o tools/mkimage.c
| In file included from tools/ublimage.c:17:0:
| include/image.h:877:27: fatal error: openssl/evp.h: No such file or
directory

It's using the host's GCC but there is no pointer to the native sysroot...
Presumably the trigger here is that I don't have openssl-dev installed on
the build host.

Ross
Denys Dmytriyenko Feb. 10, 2015, 5:09 p.m.
On Tue, Feb 10, 2015 at 04:48:51PM +0000, Burton, Ross wrote:
> On 10 February 2015 at 16:38, Burton, Ross <ross.burton@intel.com> wrote:
> 
> > ? Are you saying it's meta-fsl-ppc specific issue?
> >
> >
> > I just replicated with qemuarm and interestingly with zero tasks happening
> > at the same time.  I'm wondering if there's a file being written with an
> > old sysroot in that isn't being deleted. I'll dig quickly now.
> 
> 
> Passing V=1 to EXTRA_OEMAKE (should do this by default as quite logs are
> useless for debugging) shows:
> 
> |   gcc  -Wp,-MD,tools/.mkimage.o.d -Wall -Wstrict-prototypes -O2
> -fomit-frame-pointer   -DCONFIG_FIT_SIGNATURE -include
> ./include/libfdt_env.h -idirafterinclude -idirafter./arch/sandbox/include
> -I./lib/libfdt -I./tools -DCONFIG_SYS_TEXT_BASE=0 -DUSE_HOSTCC
> -D__KERNEL_STRICT_NAMES -D_GNU_SOURCE  -c -o tools/mkimage.o tools/mkimage.c
> | In file included from tools/ublimage.c:17:0:
> | include/image.h:877:27: fatal error: openssl/evp.h: No such file or
> directory
> 
> It's using the host's GCC but there is no pointer to the native sysroot...
> Presumably the trigger here is that I don't have openssl-dev installed on
> the build host.

D'oh! I should have dug dipper and notice the native sysroot is not being 
used... Thanks, I'll send a fixed patch shortly.
Ross Burton Feb. 10, 2015, 5:12 p.m.
Hi Denys,

On 10 February 2015 at 17:09, Denys Dmytriyenko <denis@denix.org> wrote:

> D'oh! I should have dug dipper and notice the native sysroot is not being
> used... Thanks, I'll send a fixed patch shortly.
>

Fresh eyes and all that. :)  Can you add V=1 to EXTRA_OEMAKE so this sort
of thing is easier to debug in the future?

Cheers,
Ross