[Bug 1925267] Re: u-boot unmatched dtb does not match kernel dtb

Launchpad Bug Tracker 1925267 at bugs.launchpad.net
Thu Jul 29 01:28:58 UTC 2021


This bug was fixed in the package u-boot-menu - 4.0.2ubuntu5~20.04.1

---------------
u-boot-menu (4.0.2ubuntu5~20.04.1) focal; urgency=medium

  * SRU changes from hirsute to enable booting on the HiFive Unmatched
    LP: #1925267 LP: #1923162

u-boot-menu (4.0.2ubuntu5) hirsute; urgency=medium

  * Go back to generating fdtdir option in extlinux.conf, instead patch
    u-boot qemu-riscv64_smode target to not process or load fdtdir
    option. Currently the dtb for riscv64 unmatched board in kernel &
    u-boot are _unmatched_ meaning u-boot must use its dtb, and kernel
    must use its dtb. Hence fdtdir option in extlinux.conf is
    required. LP: #1925267 LP: #1923162

u-boot-menu (4.0.2ubuntu4) hirsute; urgency=medium

  * Revert "Add support for ubuntu kernels location of device trees." as
    it breaks booting riscv64 images with qemu, as the qemu in-ram dtb
    should be used not the one from disk. LP: #1923162

u-boot-menu (4.0.2ubuntu3) hirsute; urgency=medium

  * Add support for ubuntu kernels location of device trees.

u-boot-menu (4.0.2ubuntu2) hirsute; urgency=medium

  * Make default U_BOOT_PARAMETERS to be "ro earlycon". If one is using
    embedded boards, most likely they want verbosity.

u-boot-menu (4.0.2ubuntu1) hirsute; urgency=medium

  * u-boot-update: use PRETTY_NAME from os-release as menu label.

u-boot-menu (4.0.2) unstable; urgency=medium

  [ Vagrant Cascadian ]
  * install example script for syncing .dtb files
    for systems with a split /boot partition
  * fix comment handling in in /etc/fstab

  [ Jonas Smedegaard ]
  * declare compliance with Debian Policy 4.5.0
  * use debhelper compatibility level 13 (not 10);
    build-depend on debhelper-compat (not debhelper)
  * copyright: extend coverage

 -- William 'jawn-smith' Wilson <william.wilson at canonical.com>  Thu, 24
Jun 2021 16:04:00 -0500

** Changed in: u-boot-menu (Ubuntu Focal)
       Status: Fix Committed => Fix Released

-- 
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/1925267

Title:
  u-boot unmatched dtb does not match kernel dtb

Status in u-boot package in Ubuntu:
  Fix Released
Status in u-boot-menu package in Ubuntu:
  Fix Released
Status in u-boot source package in Focal:
  Fix Released
Status in u-boot-menu source package in Focal:
  Fix Released

Bug description:
  [Impact]

   * Without the fix, Unmatched images will not boot in qemu

  [Test Case]

   * `qemu-system-riscv64 \
          -machine virt -nographic -m 2048 -smp 4 \
          -bios /usr/lib/riscv64-linux-gnu/opensbi/generic/fw_jump.elf \
          -kernel /usr/lib/u-boot/qemu-riscv64_smode/uboot.elf \
          -device virtio-net-device,netdev=eth0 -netdev user,id=eth0 \
          -drive file=<unmatched image file>,format=raw,if=virtio`
   * Observe that the above command fails to boot the image in qemu
   * Build a new unmatched image with the version of u-boot-menu
     and u-boot in -proposed. Both are needed.
   * Re-run the above qemu command on the new image, and observe
     that it boots
   * Also boot the new image on HiFive Unmatched hardware to ensure it
     boots.

  [Regression Potential]
    While multiple hardware platforms use u-boot, the only Ubuntu
    image using u-boot-menu is the Unmatched. The risk of regression
    is therefore very low, and only the hardware boot and qemu boot
    need to be tested. 

  [Original Description]
  u-boot unmatched dtb does not match kernel dtb

  We have reverted u-boot-menu upload and stopped using kernel provided
  dtbs, because that was preventing booting hirsute images under qemu.
  As dtb generated by qemu should be used, and there is no kernel
  provided dtb for qemu platform.

  This resulted in unamtched board using dtb provided by u-boot, instead
  of loading and using dtb provided by the kernel builds.

  There are differences between u-boot & kernel dtbs that potentially
  break compat.

  There are two ways of fixing this:

  1) bring uboot dtb in-line with the kernel dtb

  2) fix qemu uboot to not load dtbs from disk, even when extlinux.conf
  asks to; and resume loading the matching kernel dtb from disk

  Option 1) sounds easier for release.

  The diff between u-boot's unmatched dtb & kernel provided dtb is at
  https://paste.ubuntu.com/p/YGKCvVM6yz/

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/u-boot/+bug/1925267/+subscriptions




More information about the foundations-bugs mailing list