[U-Boot] cmd/bootefi.c:285:3: error: ‘loaded_image_info’ undeclared

Rob Clark robdclark at gmail.com
Wed Sep 20 20:29:05 UTC 2017


On Wed, Sep 20, 2017 at 2:42 PM, Heinrich Schuchardt <xypron.glpk at gmx.de> wrote:
> Hello Rob, hello Alex,
>
> when I try to compile efi-next I get
>
>   CC      cmd/bootefi.o
> cmd/bootefi.c: In function ‘do_bootefi’:
> cmd/bootefi.c:285:3: error: ‘loaded_image_info’ undeclared (first use in
> this function)
>    loaded_image_info.device_handle = bootefi_device_path;
>    ^~~~~~~~~~~~~~~~~
> cmd/bootefi.c:285:3: note: each undeclared identifier is reported only
> once for each function it appears in
> scripts/Makefile.build:280: recipe for target 'cmd/bootefi.o' failed
> make[3]: *** [cmd/bootefi.o] Error 1
> Makefile:1279: recipe for target 'cmd' failed
>
> when compiling with CONFIG_CMD_BOOTEFI_SELFTEST=y.
>
> I guess we should enable this option in qemu-x86_defconfig to make such
> errors visible in Travis CI.
>
> This seems to be the problematic patch:
> ad503ffe9c6: efi_loader: refactor boot device and loaded_image handling
>

The rebased version of this patch fixed this.  It looks like the
original patch was applied.  What you want is approximately:


#ifdef CONFIG_CMD_BOOTEFI_SELFTEST
if (!strcmp(argv[1], "selftest")) {
+ struct efi_loaded_image loaded_image_info = {};
+ struct efi_object loaded_image_info_obj = {};
+
+ efi_setup_loaded_image(&loaded_image_info, &loaded_image_info_obj,
+ bootefi_device_path, bootefi_image_path);
+
/*
* gd lives in a fixed register which may get clobbered while we
* execute the payload. So save it here and restore it on every

See: https://github.com/robclark/u-boot/commit/c17f3a0fbcedf1b5e38e671c277dbd2187d30c19


BR,
-R


More information about the U-Boot mailing list