mirror of
https://github.com/edera-dev/sprout.git
synced 2026-11-04 19:52:22 +00:00
feat(boot): install the devicetree of a BLS entry
Add a devicetree option to the chainload action, set from the devicetree key of a BLS entry. The file is installed as the EFI devicetree table with the memory type that a devicetree has to be in, patched by the fixup protocol when the firmware has one, and the table of the firmware is put back when the image returns or fails to start. It is ignored when Secure Boot is enabled, as it can't be verified, and the DeviceTree loader feature is advertised.
This commit is contained in:
1 parent
ef14e5bd98
commit
ac4ec69c02
9 files changed
+239
-6
No files matched your search
@@ -23,4 +23,9 @@ pub struct ChainloadConfiguration {
|
||||
/// using the same mechanism as `linux-initrd`. This cannot be used with `linux-initrd`.
|
||||
#[serde(default, rename = "linux-initrd-chain")]
|
||||
pub linux_initrd_chain: Vec<String>,
|
||||
/// An optional path to a flattened devicetree to give to the image.
|
||||
/// It is installed as the devicetree of the machine until the image returns. It is not
|
||||
/// used when Secure Boot is enabled, as it can't be verified.
|
||||
#[serde(default)]
|
||||
pub devicetree: Option<String>,
|
||||
}
|
||||
Reference in new issue
Block a user