Package: release.debian.org Severity: normal User: release.debian....@packages.debian.org Usertags: unblock X-Debbugs-Cc: Philip Hands <p...@hands.com>, Martin Michlmayr <t...@cyrius.com>, Rick Thomas <rbtho...@pobox.com>
Please unblock package u-boot This version of u-boot re-enables the openrd targets and applies a patch patch from upstream fixing an issue that caused a failure to boot (a more technical explanation is included in the patch itself). This version also fixes a trivial typo on the documentation for u-boot-rpi. The reasons Martin requested openrd to be re-enabled for stretch: * stretch will be the last release to include support for the armel architecture, so it would be good to get support for this device as complete as possible. * While Debian can be installed with the default u-boot shipped on the OpenRD, the one provided by Debian is much more modern. Additionally, I'd note that it was supported in jessie's u-boot, so this would be a regression on upgrade to stretch. This will allow debian-installer to re-enable support for openrd images as well. A patched version has been tested by Phil Hands and Rick Thomas to work on at least two different openrd targets. diff -Nru u-boot-2016.11+dfsg1/debian/changelog u-boot-2016.11+dfsg1/debian/changelog --- u-boot-2016.11+dfsg1/debian/changelog 2016-12-21 20:44:44.000000000 -0800 +++ u-boot-2016.11+dfsg1/debian/changelog 2017-03-27 11:39:51.000000000 -0700 @@ -1,3 +1,17 @@ +u-boot (2016.11+dfsg1-4) unstable; urgency=medium + + [ Vagrant Cascadian ] + * [armel] Apply a patch from upstream to fix openrd targets which failed + to boot, and re-enable the openrd targets (Closes: #856441). Thanks to + Albert ARIBAUD for the patch, Martin Michlmayr for pointing out the + patch, and Phil Hands and Rick Thomas for testing on various openrd + platforms. + + [ Martin Michlmayr ] + * u-boot-rpi: typo in README.Debian (Closes: #858574). + + -- Vagrant Cascadian <vagr...@debian.org> Mon, 27 Mar 2017 14:39:51 -0400 + u-boot (2016.11+dfsg1-3) unstable; urgency=medium [ Peter Michael Green ] diff -Nru u-boot-2016.11+dfsg1/debian/patches/series u-boot-2016.11+dfsg1/debian/patches/series --- u-boot-2016.11+dfsg1/debian/patches/series 2016-12-21 20:11:16.000000000 -0800 +++ u-boot-2016.11+dfsg1/debian/patches/series 2017-03-27 11:21:55.000000000 -0700 @@ -32,3 +32,5 @@ orangepi_zero/0001-sunxi-add-proper-device-tree-for-Orange-Pi-Zero-boar.patch orangepi_zero/0002-sunxi-add-orangepi-zero-defconfig.patch + +upstream/openrd/0001-armv5te-make-ret-lr-produce-iinterworking-bx-lr.patch diff -Nru u-boot-2016.11+dfsg1/debian/patches/upstream/openrd/0001-armv5te-make-ret-lr-produce-iinterworking-bx-lr.patch u-boot-2016.11+dfsg1/debian/patches/upstream/openrd/0001-armv5te-make-ret-lr-produce-iinterworking-bx-lr.patch --- u-boot-2016.11+dfsg1/debian/patches/upstream/openrd/0001-armv5te-make-ret-lr-produce-iinterworking-bx-lr.patch 1969-12-31 16:00:00.000000000 -0800 +++ u-boot-2016.11+dfsg1/debian/patches/upstream/openrd/0001-armv5te-make-ret-lr-produce-iinterworking-bx-lr.patch 2017-03-27 11:21:55.000000000 -0700 @@ -0,0 +1,39 @@ +From 6b4e9426834580810790ecfa924979d61c5c1987 Mon Sep 17 00:00:00 2001 +From: Albert ARIBAUD <albert.u.b...@aribaud.net> +Date: Mon, 27 Feb 2017 20:19:07 +0100 +Subject: [PATCH] armv5te: make 'ret lr' produce iinterworking 'bx lr' + +Current ARM assembler helper for the 'return to caller' pseudo-instruction +turns 'ret lr' into 'mov pc, lr' for ARMv5TE. This causes the core to remain +in its current ARM state even when the routine doing the 'ret' was called +from Thumb-1 state, triggering an undefined instruction exception. + +This causes early run-time failures in all boards compiled using the Thumb-1 +instruction set (for instance the Open-RD family). + +ARMv5TE supports 'bx lr' which properly implements interworking and thus +correctly returns to Thumb-1 state from ARM state. + +This change makes 'ret lr' turn into 'bx lr' for ARMv5TE. + +Signed-off-by: Albert ARIBAUD <albert.u.b...@aribaud.net> +--- + arch/arm/include/asm/assembler.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/arch/arm/include/asm/assembler.h b/arch/arm/include/asm/assembler.h +index ae1e42fc06..c56daf2a1f 100644 +--- a/arch/arm/include/asm/assembler.h ++++ b/arch/arm/include/asm/assembler.h +@@ -59,7 +59,7 @@ + + .irp c,,eq,ne,cs,cc,mi,pl,vs,vc,hi,ls,ge,lt,gt,le,hs,lo + .macro ret\c, reg +-#if defined(__ARM_ARCH_5E__) || defined(__ARM_ARCH_5TE__) ++#if defined(__ARM_ARCH_5E__) + mov\c pc, \reg + #else + .ifeqs "\reg", "lr" +-- +2.11.0 + diff -Nru u-boot-2016.11+dfsg1/debian/targets u-boot-2016.11+dfsg1/debian/targets --- u-boot-2016.11+dfsg1/debian/targets 2016-12-21 20:11:16.000000000 -0800 +++ u-boot-2016.11+dfsg1/debian/targets 2017-03-27 11:21:55.000000000 -0700 @@ -8,6 +8,17 @@ # drEagle <drea...@doukki.net> armel - guruplug u-boot.kwb +# Albert ARIBAUD <albert.u.b...@aribaud.net> +armel - openrd_base u-boot.kwb + +# Rick Thomas <rbtho...@rcthomas.org> +# Albert ARIBAUD <albert.u.b...@aribaud.net> +armel - openrd_client u-boot.kwb + +# Rick Thomas <rbtho...@rcthomas.org> +# Philip Hands <p...@hands.com> +armel - openrd_ultimate u-boot.kwb + # Vagrant Cascadian <vagr...@debian.org>, rpi B 256M armel rpi rpi u-boot.bin diff -Nru u-boot-2016.11+dfsg1/debian/u-boot-rpi.README.Debian u-boot-2016.11+dfsg1/debian/u-boot-rpi.README.Debian --- u-boot-2016.11+dfsg1/debian/u-boot-rpi.README.Debian 2016-12-21 19:39:14.000000000 -0800 +++ u-boot-2016.11+dfsg1/debian/u-boot-rpi.README.Debian 2017-03-27 11:38:05.000000000 -0700 @@ -1,7 +1,7 @@ == Installation == The raspberry pi targets can be installed by copying u-boot.bin to the -FAT partition of the raspberry pi boot firmwware: +FAT partition of the raspberry pi boot firmware: mkdir -p /boot/fat mount /dev/mmcblk0p1 /boot/fat unblock u-boot/u-boot_2016.11+dfsg1-4 Thanks for taking the time to review this request! live well, vagrant
signature.asc
Description: PGP signature