[Bug 1846329] Re: [SRU] 2019.07 to support Pi4 boot

Dave Jones dave.jones at canonical.com
Fri Dec 20 13:08:43 UTC 2019


** Summary changed:

- [FFe] 2019.07 to support Pi4 boot
+ [SRU] 2019.07 to support Pi4 boot

** Description changed:

  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)
- 
+ The current stable release (bionic) does not support booting on the
+ Raspberry Pi 4. Several packages need back-porting from devel to support
+ this, along with a new kernel.
  
  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).
- 
+ * Attempt to boot the latest bionic image (18.04.3) on a pi4; note failure
+ * Move the SD card to a pi3 and boot successfully
+ * Ensure all packages are up to date (apt update/upgrade)
+ * sudo add-apt-repository ppa:waveform/pi4
+ * sudo apt upgrade
+ * sudo reboot
+ * Ensure boot proceeds successfully on the pi3
+ * Verify facilities (USB peripherals, USB mass storage, wifi, bluetooth, audio, etc.) work
+ * sudo apt install linux-image-raspi2-hwe-18.04-edge
+ * sudo reboot
+ * Ensure boot proceeds successfully on the pi3
+ * Verify facilities (USB peripherals, USB mass storage, wifi, bluetooth, audio, etc.) work
+ * Move the SD card back to the pi4
+ * Ensure boot proceeds successfully on the pi4
+ * Verify facilities (USB peripherals, USB mass storage, wifi, bluetooth, audio, etc.) work
+ * Repeat for both archs (armhf and arm64)
  
  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.
+ Plenty; pi4 support on bionic requires back-ports of flash-kernel,
+ u-boot, linux-firmware-raspi2, and the kernel. Furthermore, the firmware
+ package needs to support two kernels (the current 4.x series and the
+ proposed 5.x series). Verification of boot, and other facilities (USB
+ peripherals, mass storage, free memory, wifi, etc. etc.) should be
+ performed on both archs and all supported models of pi (2, 3, 3A+, 3B+,
+ 4B all memory variants).

-- 
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:
  [SRU] 2019.07 to support Pi4 boot

Status in u-boot package in Ubuntu:
  Fix Released
Status in u-boot source package in Bionic:
  In Progress

Bug description:
  Impact
  ======

  The current stable release (bionic) does not support booting on the
  Raspberry Pi 4. Several packages need back-porting from devel to
  support this, along with a new kernel.

  Test Case
  =========

  * Attempt to boot the latest bionic image (18.04.3) on a pi4; note failure
  * Move the SD card to a pi3 and boot successfully
  * Ensure all packages are up to date (apt update/upgrade)
  * sudo add-apt-repository ppa:waveform/pi4
  * sudo apt upgrade
  * sudo reboot
  * Ensure boot proceeds successfully on the pi3
  * Verify facilities (USB peripherals, USB mass storage, wifi, bluetooth, audio, etc.) work
  * sudo apt install linux-image-raspi2-hwe-18.04-edge
  * sudo reboot
  * Ensure boot proceeds successfully on the pi3
  * Verify facilities (USB peripherals, USB mass storage, wifi, bluetooth, audio, etc.) work
  * Move the SD card back to the pi4
  * Ensure boot proceeds successfully on the pi4
  * Verify facilities (USB peripherals, USB mass storage, wifi, bluetooth, audio, etc.) work
  * Repeat for both archs (armhf and arm64)

  Regression Potential
  ====================

  Plenty; pi4 support on bionic requires back-ports of flash-kernel,
  u-boot, linux-firmware-raspi2, and the kernel. Furthermore, the
  firmware package needs to support two kernels (the current 4.x series
  and the proposed 5.x series). Verification of boot, and other
  facilities (USB peripherals, mass storage, free memory, wifi, etc.
  etc.) should be performed on both archs and all supported models of pi
  (2, 3, 3A+, 3B+, 4B all memory variants).

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