[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH for-xen-4.5 v4 13/18] x86: move EFI memory map stuff to boot_info
Signed-off-by: Daniel Kiper <daniel.kiper@xxxxxxxxxx> --- xen/arch/x86/boot_info.c | 3 +++ xen/common/efi/efi.h | 6 +++++- xen/common/efi/runtime.c | 11 +++++++---- xen/include/asm-x86/boot_info.h | 9 +++++++++ 4 files changed, 24 insertions(+), 5 deletions(-) diff --git a/xen/arch/x86/boot_info.c b/xen/arch/x86/boot_info.c index 081453e..77e9d5a 100644 --- a/xen/arch/x86/boot_info.c +++ b/xen/arch/x86/boot_info.c @@ -44,6 +44,9 @@ static boot_info_t __read_mostly boot_info_mb = { .mem_upper = 0, .e820map_nr = 0, .e820map = NULL, + .efi_mmap_size = 0, + .efi_mmap_desc_size = 0, + .efi_mmap = NULL, .mods_nr = 0, .mods = NULL, .warn_msg = NULL, diff --git a/xen/common/efi/efi.h b/xen/common/efi/efi.h index 526f57c..214651b 100644 --- a/xen/common/efi/efi.h +++ b/xen/common/efi/efi.h @@ -30,10 +30,14 @@ extern EFI_RUNTIME_SERVICES *efi_rs; #ifndef CONFIG_ARM /* TODO - boot_info is not implemented on ARM yet */ extern boot_info_t boot_info_efi; -#endif +#define efi_memmap_size boot_info_efi.efi_mmap_size +#define efi_mdesc_size boot_info_efi.efi_mmap_desc_size +#define efi_memmap boot_info_efi.efi_mmap +#else extern UINTN efi_memmap_size, efi_mdesc_size; extern void *efi_memmap; +#endif #ifdef CONFIG_X86 extern l4_pgentry_t *efi_l4_pgtable; diff --git a/xen/common/efi/runtime.c b/xen/common/efi/runtime.c index 1b786a1..3a74e98 100644 --- a/xen/common/efi/runtime.c +++ b/xen/common/efi/runtime.c @@ -36,10 +36,6 @@ EFI_RUNTIME_SERVICES *__read_mostly efi_rs; static DEFINE_SPINLOCK(efi_rs_lock); #endif -UINTN __read_mostly efi_memmap_size; -UINTN __read_mostly efi_mdesc_size; -void *__read_mostly efi_memmap; - UINT64 __read_mostly efi_boot_max_var_store_size; UINT64 __read_mostly efi_boot_remain_var_store_size; UINT64 __read_mostly efi_boot_max_var_size; @@ -65,11 +61,18 @@ boot_info_t __read_mostly boot_info_efi = { .mem_upper = 0, .e820map_nr = 0, .e820map = e820map, + .efi_mmap_size = 0, + .efi_mmap_desc_size = 0, + .efi_mmap = NULL, .mods_nr = 0, .mods = boot_info_mods, .warn_msg = NULL, .err_msg = NULL }; +#else +UINTN __read_mostly efi_memmap_size; +UINTN __read_mostly efi_mdesc_size; +void *__read_mostly efi_memmap; #endif #ifndef CONFIG_ARM /* TODO - disabled until implemented on ARM */ diff --git a/xen/include/asm-x86/boot_info.h b/xen/include/asm-x86/boot_info.h index c0c92b4..99ff93e 100644 --- a/xen/include/asm-x86/boot_info.h +++ b/xen/include/asm-x86/boot_info.h @@ -59,6 +59,15 @@ typedef struct { */ struct e820entry *e820map; + /* Size (in bytes) of EFI memory map provided by Xen preloader. */ + size_t efi_mmap_size; + + /* Size (in bytes) of EFI memory map descriptor provided by Xen preloader. */ + size_t efi_mmap_desc_size; + + /* Pointer to EFI memory map provided by preloader. */ + void *efi_mmap; + /* Number of modules. */ unsigned int mods_nr; -- 1.7.10.4 _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |