URL:
<http://savannah.gnu.org/bugs/?52939>
Summary: [PATCH] 10_linux: support loading device trees
Project: GNU GRUB
Submitted by: xypron
Submitted on: Sat 20 Jan 2018 11:58:56 AM CET
Category: Booting
Severity: Major
Priority: 5 - Normal
Item Group: Feature Request
Status: None
Privacy: Public
Assigned to: None
Originator Name: Heinrich Schuchardt
Originator Email: [email protected]
Open/Closed: Open
Discussion Lock: Any
Release:
Release: Git master
Reproducibility: Every Time
Planned Release: None
_______________________________________________________
Details:
Currently grub only loads the Linux kernel and the initial file system before
booting.
On the arm and arm64 architectures the device tree is also needed for booting.
The device tree is Linux kernel version dependent. So we can not rely on the
initial bootloader to provide the correct device tree when calling grub.
For example I am using U-Boot to load iPXE. In iPXE I choose an iSCSI target.
iPXE connects to the target and starts grubaa64.efi. The device tree that has
to be used depends on the Linux kernel installed on the chosen iSCSI target.
Luckily the device tree to be loaded can be specified in grub with the
devicetree command.
The patch changes the 10_linux script to look in sequence for files
* ${dirname}/dtb-${version} and
* ${dirname}/dtb.
If one of the files is present an entry
devicetreee ${rel_dirname}/${dtb}
is added to the Linux boot entry.
== Distro suppport ==
Debian maintains a symbolic link /boot/dtb to the most current device tree and
another symbolic link /boot/dtb-${version} for the version specific devicetree
if package flash-kernel is installed.
On Suse a symbolic link /boot/dtb points to the current
/boot/dtb-${version}.
== Caveats ==
The EFI bootloader will still have to supply a dummy device tree which will be
replaced by the devicetree command.
As of U-Boot version v2018.01 U-Boot this dummy device tree has to be passed
explicitely to the bootefi command.
_______________________________________________________
File Attachments:
-------------------------------------------------------
Date: Sat 20 Jan 2018 11:58:56 AM CET Name:
0001-10_linux-support-loading-device-trees.patch Size: 3KiB By: xypron
<http://savannah.gnu.org/bugs/download.php?file_id=42983>
_______________________________________________________
Reply to this item at:
<http://savannah.gnu.org/bugs/?52939>
_______________________________________________
Message sent via/by Savannah
http://savannah.gnu.org/
_______________________________________________
Bug-grub mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/bug-grub