Hi Shannon,

On 17/11/15 09:40, shannon.z...@linaro.org wrote:
> From: Shannon Zhao <shannon.z...@linaro.org>
> 
> When preparing EFI tables for Dom0, it needs the information of EFI
> system table. Here store it in efi structure.

On ARM64 the EFI stub is completely independent and therefore it's not
possible to share variable between Xen and the stub.

If it's working today is only by luck as we zero the BSS after the stub
jumped to Xen entry point.

Regards,

> Signed-off-by: Parth Dixit <parth.di...@linaro.org>
> Signed-off-by: Shannon Zhao <shannon.z...@linaro.org>
> ---
>  xen/common/efi/boot.c | 2 ++
>  xen/include/xen/efi.h | 1 +
>  2 files changed, 3 insertions(+)
> 
> diff --git a/xen/common/efi/boot.c b/xen/common/efi/boot.c
> index 78d8ae9..6a48624 100644
> --- a/xen/common/efi/boot.c
> +++ b/xen/common/efi/boot.c
> @@ -1155,6 +1155,8 @@ efi_start(EFI_HANDLE ImageHandle, EFI_SYSTEM_TABLE 
> *SystemTable)
>  
>      efi_tables();
>  
> +    efi.est = (long)SystemTable;
> +
>      /* Collect PCI ROM contents. */
>      setup_efi_pci();
>  
> diff --git a/xen/include/xen/efi.h b/xen/include/xen/efi.h
> index e74dad1..e112296 100644
> --- a/xen/include/xen/efi.h
> +++ b/xen/include/xen/efi.h
> @@ -16,6 +16,7 @@ struct efi {
>      unsigned long acpi20;       /* ACPI table (ACPI 2.0) */
>      unsigned long smbios;       /* SM BIOS table */
>      unsigned long smbios3;      /* SMBIOS v3 table */
> +    unsigned long est;          /* EFI system table */
>  };
>  
>  extern struct efi efi;
> 


-- 
Julien Grall

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel

Reply via email to