[Bug 1846329] Re: [FFe] 2019.07 to support Pi4 boot
Dave Jones
dave.jones at canonical.com
Wed Oct 2 11:50:29 UTC 2019
** Attachment added: "Output from apt upgrade"
https://bugs.launchpad.net/ubuntu/+source/u-boot/+bug/1846329/+attachment/5293623/+files/upgrade-output.txt
--
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to u-boot in Ubuntu.
https://bugs.launchpad.net/bugs/1846329
Title:
[FFe] 2019.07 to support Pi4 boot
Status in u-boot package in Ubuntu:
New
Bug description:
Impact
======
The proposed version supports booting Ubuntu on the Raspberry Pi 4,
both by providing a Pi 4 compatible variant of u-boot (which requires
the version bump to 2019.07), and by detecting and (if required)
migrating the boot configuration to support the Pi 4 (by calling
different u-boot binaries depending upon the host Pi's version).
The package has been built in the following PPA:
https://launchpad.net/~waveform/+archive/ubuntu/ubpi4/+packages
A git-ubuntu branch with the proposed changes is available at:
https://code.launchpad.net/~waveform/ubuntu/+source/u-boot/+git/u-boot/+ref/ubuntu-2019.07-pi4
(the version in this branch is lower than the PPA as the branch has
been rebased for clarity, compressing all the minor modifications done
during testing)
Test Case
==========
Upon installing the new package on a system with the existing u-boot
setup (a single u-boot binary under /boot/firmware and a config.txt
that points to it as the kernel), the postinst script should detect
this scenario and migrate the configuration to one with multiple
u-boot binaries under /boot/firmware and a config.txt with selective
sections pointing to them. After installation, the card should still
boot successfully on all supported models (at present the Pi4 will
only get to the u-boot stage, pending kernel work).
This process has been tested on the Pi 2 (armhf only), 3, 3A+, 3B+,
and 4 (under armhf and arm64 on relevant platforms). The scripts for
detecting and migrating the old boot configuration to the new have
been tested with the Eoan and Bionic boot configurations, with a view
to eventual SRU of this package to Bionic (for Pi 4 support on LTS).
Regression Potential
====================
Testing with the older Bionic firmware led to several changes (that
led to re-testing on the Eoan firmware), which has increased
confidence in the low probability of regressions at least as regards
the Pi. The certification team will test other relevant platforms
using u-boot to ensure they are still capable of booting with the
2019.07 version (other than the pi's postinst script, no other scripts
have changed so boot capability is all that requires testing).
The boot config migration code takes some pains to detect the old and
new states, both by hash checking and (as fallback) by rudimentary
content analysis. It is conservative in choosing when to migrate (only
when both a package version check passes and detection confirms the
old boot configuration is present), and provides a backup of the
original configuration (in fact, an "unmigration" routine is included
in the library, primarily for testing).
At this point, the major concern for regression is other platforms
relying upon u-boot.
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/u-boot/+bug/1846329/+subscriptions
More information about the foundations-bugs
mailing list