Just like boot configs or scripts, .dtb files may be in /boot.
Search $efi_dtb_prefixes for all $boot_prefixes.

Cc: Alexander Graf <ag...@suse.de>
Signed-off-by: Andreas Färber <afaer...@suse.de>
---
 include/config_distro_bootcmd.h | 24 +++++++++++++++---------
 1 file changed, 15 insertions(+), 9 deletions(-)

diff --git a/include/config_distro_bootcmd.h b/include/config_distro_bootcmd.h
index b1c9d36..087f576 100644
--- a/include/config_distro_bootcmd.h
+++ b/include/config_distro_bootcmd.h
@@ -125,19 +125,25 @@
        \
        "load_efi_dtb="                                                   \
                "load ${devtype} ${devnum}:${distro_bootpart} "           \
-                       "${fdt_addr_r} ${prefix}${efi_fdtfile}\0"         \
+                       "${fdt_addr_r} "                                  \
+                       "${prefix}${dtb_prefix}${efi_fdtfile}\0"          \
        \
-       "efi_dtb_prefixes=/ /dtb/ /dtb/current/\0"                        \
+       "efi_dtb_prefixes=\"\" dtb/ dtb/current/\0"                       \
+       "scan_dev_for_efi_fdt="                                           \
+               "for prefix in ${boot_prefixes}; do "                     \
+                       "for dtb_prefix in ${efi_dtb_prefixes}; do "      \
+                               "if test -e ${devtype} "                  \
+                                       "${devnum}:${distro_bootpart} "   \
+                                       "${prefix}${dtb_prefix}"          \
+                                       "${efi_fdtfile}; then "           \
+                                       "run load_efi_dtb; "              \
+                               "fi; "                                    \
+                       "done; "                                          \
+               "done\0"                                                  \
        "scan_dev_for_efi="                                               \
                "setenv efi_fdtfile ${fdtfile}; "                         \
                BOOTENV_EFI_SET_FDTFILE_FALLBACK                          \
-               "for prefix in ${efi_dtb_prefixes}; do "                  \
-                       "if test -e ${devtype} "                          \
-                                       "${devnum}:${distro_bootpart} "   \
-                                       "${prefix}${efi_fdtfile}; then "  \
-                               "run load_efi_dtb; "                      \
-                       "fi; "                                            \
-               "done; "                                                  \
+               "run scan_dev_for_efi_fdt; "                              \
                "if test -e ${devtype} ${devnum}:${distro_bootpart} "     \
                                        "efi/boot/"BOOTEFI_NAME"; then "  \
                                "echo Found EFI removable media binary "  \
-- 
2.6.6

_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot

Reply via email to