Hi Javier,

On 29 January 2018 at 09:36, Javier Santos Romo <jsan...@gmv.com> wrote:

> Hi,
>
> I am Juan Alfonso Reyes, a firmware engineer in GMV. Currently we are 
> developing new boards based in Apollo Lake CPU.  We are trying to load uboot 
> from UEFI. Using the default qemu-x86_efi_payload64_defconfig  we are getting 
> “U-Boot EFI Payload 2002 No memory map” error code.
>
> As I can see in the code 2002 means (efi_stub.c):
>
>
>
> ret = boot->get_memory_map(&size, NULL, &key, &desc_size, &version);
>
>             if (ret != EFI_BUFFER_TOO_SMALL) {
>
>                         printhex2(BITS_PER_LONG);
>
>                         printhex2(ret);
>
>                         puts(" No memory map\n");
>
>                         while(1);
>
>                         return ret;
>
>             }
>
>
>
> 0x20   -> BITS_PER_LONG 32bits
>
> 0x02 -> EFI_INVALID_PARAMETER
>
>
>
> 32bits sounds weird for me, so I changed config to use CONFIG_X86_RUN_64BIT 
> instead of CONFIG_X86_RUN_32BIT. I have changed it and I got a compilation 
> error:

Are you using 64-bit EFI or 32-bit?

I think you was CONFIG_EFI_STUB_64BIT

See doc/README.efi for some info about this. Note this this option
makes the stub run as a 64-bit EFI app, but U-Boot itself is still
only 32-bit.

>
>
>
> In file included from include/common.h:53:0,
>
>                  from cmd/efi.c:8:
>
> cmd/efi.c: In function ‘do_efi_mem’:
>
> ./arch/x86/include/asm/global_data.h:117:12: error: ‘global_data_ptr’ 
> undeclared (first use in this function)
>
> #define gd global_data_ptr
>
>
>
>
>
> I have surfed in the code and I have found this in 
> ./arch/x86/include/asm/global_data.h
>
>
>
> # if defined(CONFIG_EFI_APP) || CONFIG_IS_ENABLED(X86_64)
>
> /* TODO(s...@chromium.org): Consider using a fixed register for gd on x86_64 
> */
>
> #define gd global_data_ptr
>
>
>
> What do you mean with “Consider using a fixed register for gd” ?Can you help 
> us to make this work? Are we in the correct direction?

This is for running U-Boot itself as a 64-bit app. This is not
currently supported as an EFI payload, only as a bar-metal U-Boot (not
run from EFI).

The meaning of the comment is that on 32-bit x86 we use the FS
register to store gd. See:

#define gd      get_fs_gd_ptr()

We could potentially make gd use a fixed x86 register on 64-bit x86 as
well. This comment is about considering that.

Regards,
Simon


>
>
>
> Thank you very much,
>
>
>
> Best regards,
>
> ________________________________
>
> Juan Alfonso Reyes Ajenjo
> Ingeniero en Informatica / Computer Systems Engineer
>
> Ingeniero en Automática y Electrónica Industrial / Automation and Industrial 
> Electronics Engineer
>
> GMV
> Juan de Herrera nº17
> Boecillo
> E-47151 Valladolid
> Tel. +34 983 54 65 54
> Fax +34 983 54 65 53
> www.gmv.com
>
>
>
>
>
>
>
>
> P Please consider the environment before printing this e-mail.
>
>
> P Please consider the environment before printing this e-mail.

What does this mean?

>
> ________________________________
> This message including any attachments may contain confidential information, 
> according to our Information Security Management System, and intended solely 
> for a specific individual to whom they are addressed. Any unauthorised copy, 
> disclosure or distribution of this message is strictly forbidden. If you have 
> received this transmission in error, please notify the sender immediately and 
> delete it. Thank you.
> ________________________________
> Este mensaje, y en su caso, cualquier fichero anexo al mismo, puede contener 
> información clasificada por su emisor como confidencial en el marco de su 
> Sistema de Gestión de Seguridad de la Información siendo para uso exclusivo 
> del destinatario, quedando prohibida su divulgación copia o distribución a 
> terceros sin la autorización expresa del remitente. Si Vd. ha recibido este 
> mensaje erróneamente, se ruega lo notifique al remitente y proceda a su 
> borrado. Gracias por su colaboración.
> ________________________________
> Esta mensagem, incluindo qualquer ficheiro anexo, pode conter informação 
> confidencial, de acordo com nosso Sistema de Gestão de Segurança da 
> Informação, sendo para uso exclusivo do destinatário e estando proibida a sua 
> divulgação, cópia ou distribuição a terceiros sem autorização expressa do 
> remetente da mesma. Se recebeu esta mensagem por engano, por favor avise de 
> imediato o remetente e apague-a. Obrigado pela sua colaboração.
> ________________________________

Would you mind trimming your signature down for the mailing list?

Regards,
Simon
_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot

Reply via email to