cmd/load: support uploading EFI binary via UART
authorHeinrich Schuchardt <xypron.glpk@gmx.de>
Fri, 19 Mar 2021 02:50:57 +0000 (02:50 +0000)
committerHeinrich Schuchardt <xypron.glpk@gmx.de>
Thu, 25 Mar 2021 19:12:49 +0000 (20:12 +0100)
When uploading an EFI binary via the UART we have to call
efi_set_bootdev() or we won't be able to execute it.

Put the includes into alphabetic order.

Fixes: 5f59518a7b1a ("efi_loader: setting boot device")
Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
cmd/load.c

index 5bbc39b..b7894d7 100644 (file)
 #include <command.h>
 #include <console.h>
 #include <cpu_func.h>
+#include <efi_loader.h>
 #include <env.h>
+#include <exports.h>
 #include <flash.h>
 #include <image.h>
-#include <s_record.h>
+#include <mapmem.h>
 #include <net.h>
-#include <exports.h>
+#include <s_record.h>
 #include <serial.h>
 #include <xyzModem.h>
 #include <asm/cache.h>
@@ -996,6 +998,10 @@ static ulong load_serial_ymodem(ulong offset, int mode)
                        }
 
                }
+               if (IS_ENABLED(CONFIG_CMD_BOOTEFI))
+                       efi_set_bootdev("Uart", "", "",
+                                       map_sysmem(offset, 0), size);
+
        } else {
                printf("%s\n", xyzModem_error(err));
        }