[Bug 1819443] Re: Cannot boot installer on platforms requiring Device Tree

Dimitri John Ledkov launchpad at surgut.co.uk
Mon Mar 11 15:47:10 UTC 2019


1. The precompiled dtb's -> i can check if we can ship them in the d-i
initrd preinstalled, or at least add them for the mini.iso and/or
server.iso

2. So for amd64 mini.iso there is a 6M partition free to use for
whatever:

$ wget http://archive.ubuntu.com/ubuntu/dists/bionic/main/installer-amd64/current/images/netboot/mini.iso
$ sudo kpartx -av ./mini.iso
$ mount /dev/mapper/loop30p2 /mnt/
$ df -h | grep /mnt
/dev/mapper/loop30p2  6.0M     0  6.0M   0% /mnt

But i don't see anything similar for arm64 unfortunately. The intention is that when one does dd= of this onto e.g. usb-stick, there is a partition to drop e.g. preseed or some weird dkms drivers there.
How much space would we need to drop a dtb? (ie. what's the largest reasonable dtb is?)

3. le sigh
ideally we'd then structure the boot entries somehow sensible in subtrees, or offer an edit to specify the right name, cause there are a lot of them.
Can grub at all guess/detect the right one to use at all? I.e. at least read the top level vendor and/or model names? Cause it would be nice to load the right one automatically, where possible.

-- 
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to debian-installer in Ubuntu.
https://bugs.launchpad.net/bugs/1819443

Title:
  Cannot boot installer on platforms requiring Device Tree

Status in debian-installer package in Ubuntu:
  New

Bug description:
  In the past, when booting Linux on non-(x84_64|i386) machines, it was
  a requirement to configure and build Linux kernels tailored
  specifically for a particular device. Now, after many efforts ("one
  image to rule them all" and the like) to unify and consolidate vendor
  fragmentation, it is now possible to boot Single Board Computers
  (SBCs) of similar core architectures with one single binary image.

  In order to make this possible Linux is provided with a description of
  the hardware it is expected to operate on. There are currently two
  main technologies which provide this functionality; Advanced
  Configuration and Power Interface (ACPI) and Device Tree (DT). This
  report only deals with Device Tree (DT).

  In an ideal world, firmware installed onto a device would be readily
  upgradable and thus provide Linux with an up-to-date hardware
  description that it can work with. However, there are some devices
  which do not contain either capable or upgradable (or both) firmware,
  so this information has to be sought from elsewhere.

  The kernel packages provided by the Ubuntu build system do contain
  pre-compiled Device Tree Binaries (DTBs) for currently supported
  hardware, however these do not make it into the Ubuntu Installers.
  Instead only a single kernel binary exists which expects to be
  informed of platform specifics via ACPI tables provided by the
  platform's firmware. This means that many devices which could easily
  be supported by the Ubuntu Installer, are not.

  There are a couple of ideas which we'd like to put forward to start
  the conversation off:

   1. Place all supported DTBs into the installer
   2. Allow for a small writable partition on the install media for a user to place a DTB
   3. Enable Grub to be able to pick a DTB from a menu at boot time

  At worst case, as long as the DTBs find their way into the installer a
  user can manually add a 'devicetree' (similar to 'linux' and 'initrd')
  entry to the Grub menuentry, which would also achieve the aim.

  Any help to boot such devices would be gratefully received.

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/debian-installer/+bug/1819443/+subscriptions



More information about the foundations-bugs mailing list