[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#1112063: ITP: stubble -- UEFI kernel stub with device-tree loading capability



Hi,

Quoting Christopher Obbard (2025-08-25 21:13:23)
> Package: wnpp
> Severity: wishlist
> Owner: Christopher Obbard <obbardc@debian.org>
> X-Debbugs-Cc: debian-devel@lists.debian.org, Christopher Obbard <obbardc@debian.org>, Tobias Heider <tobias.heider@canonical.com>
> 
>   Package name    : stubble
>   Version         : v3
>   Upstream Contact: Tobias Heider <tobias.heider@canonical.com>
>   URL             : https://github.com/canonical/stubble
>   License         : LGPL2.1
>   Programming Lang: C
>   Description     : UEFI kernel stub with device-tree loading capability
> 
> Small Linux kernel EFI boot stub bundling device trees, a CHID database
> and the kernel. The stub finds a matching device tree based on CHIDs
> generated from SMBIOS and loads it before executing the embedded
> kernel.
> 
> Booting generic Distro images on ARM64 laptops is quite hard due to
> (currently) no way to tell what hardware the image is running on, or to
> load the correct device tree from the kernel.
> 
> Stubble aims to mitigate against this by loading the correct device tree
> for the laptop at runtime.
> 
> This package will be useful to build ARM64 Debian images which
> "just-work" on ARM laptops, specifically Qualcomm X-Elite laptops.

I'm very interested in this as I maintain the Debian integration for the MNT
Reform and MNT Pocket Reform open hardware laptop. They usually boot via u-boot
and then either /boot/boot.scr or /boot/extlinux/extlinux.conf which are
populated by flash-kernel and u-boot-menu with the correct device tree for the
platform, respectively. We can create images that work on all platforms
supported by MNT by using u-boots $fdtfile option which allows the
platform-specific u-boot binary to select the right device tree from an
otherwise device-agnostic system image.

I already have a POC for EFI booting with EDK2 but one big downside is, that
using the facilities provided by systemd-ukify, systemd-boot and
systemd-boot-efi creates a binary which has a device-specific dtb baked into
the binary making it device specific.

If stubble would allow us to create efi stubs which are identical independent
of the platform because they select the dtb "at runtime" then I am extremely
interested in using stubble for the MNT Reform.

Can you confirm that stubble might be providing the functionality we are
looking for?

Thanks!

cheers, josch

Attachment: signature.asc
Description: signature


Reply to: