diff options
| author | Alexander Graf <[email protected]> | 2016-04-14 16:07:53 +0200 |
|---|---|---|
| committer | Tom Rini <[email protected]> | 2016-04-18 17:11:49 -0400 |
| commit | 1c39809b92c217877e160ee91a82743c9d4f3ed1 (patch) | |
| tree | c190fa201099324ea5f9f6303bfd3bbdf15c711a /include | |
| parent | 0c4b3880c1113276c6949effdd88d28578ab8ed5 (diff) | |
efi_loader: Pass fdt address directly to bootefi cmd
The bootefi cmd today fetches its device tree pointer from either the
location appointed by "fdt addr" with a fallback to the U-Boot control
fdt.
This integration is unusual for U-Boot and diverges from the way we
usually handle parameters to boot commands. So let's pass the fdt
directly into the bootefi command instead and move the control fdt
logic into the distro boot script.
Signed-off-by: Alexander Graf <[email protected]>
Acked-by: Stephen Warren <[email protected]>
Reviewed-by: Andreas Färber <[email protected]>
Diffstat (limited to 'include')
| -rw-r--r-- | include/config_distro_bootcmd.h | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/include/config_distro_bootcmd.h b/include/config_distro_bootcmd.h index ad9045e4f0f..dddebc3224d 100644 --- a/include/config_distro_bootcmd.h +++ b/include/config_distro_bootcmd.h @@ -103,12 +103,15 @@ "boot_efi_binary=" \ "load ${devtype} ${devnum}:${distro_bootpart} " \ "${kernel_addr_r} efi/boot/"BOOTEFI_NAME"; " \ - "bootefi ${kernel_addr_r}\0" \ + "if fdt addr ${fdt_addr_r}; then " \ + "bootefi ${kernel_addr_r} ${fdt_addr_r};" \ + "else" \ + "bootefi ${kernel_addr_r} ${fdtcontroladdr};" \ + "fi\0" \ \ "load_efi_dtb=" \ "load ${devtype} ${devnum}:${distro_bootpart} " \ - "${fdt_addr_r} ${prefix}${fdtfile}; " \ - "fdt addr ${fdt_addr_r}\0" \ + "${fdt_addr_r} ${prefix}${fdtfile}\0" \ \ "efi_dtb_prefixes=/ /dtb/ /dtb/current/\0" \ "scan_dev_for_efi=" \ |
