efi_loader: provide efi_mem_desc version
Provide version of struct efi_mem_desc in efi_get_memory_map(). EFI_BOOT_SERVICES.GetMemoryMap() in UEFI specification v2.6 defines memory descriptor version to 1. Linux kernel also expects descriptor version to be 1 and prints following warning during boot if its not: Unexpected EFI_MEMORY_DESCRIPTOR version 0 Signed-off-by: Mian Yousaf Kaukab <yousaf.kaukab@gmail.com>
This commit is contained in:
parent
bac17b78da
commit
4c02c11de8
|
@ -159,6 +159,8 @@ struct efi_mem_desc {
|
|||
u64 attribute;
|
||||
};
|
||||
|
||||
#define EFI_MEMORY_DESCRIPTOR_VERSION 1
|
||||
|
||||
/* Allocation types for calls to boottime->allocate_pages*/
|
||||
#define EFI_ALLOCATE_ANY_PAGES 0
|
||||
#define EFI_ALLOCATE_MAX_ADDRESS 1
|
||||
|
|
|
@ -339,6 +339,9 @@ efi_status_t efi_get_memory_map(unsigned long *memory_map_size,
|
|||
if (descriptor_size)
|
||||
*descriptor_size = sizeof(struct efi_mem_desc);
|
||||
|
||||
if (descriptor_version)
|
||||
*descriptor_version = EFI_MEMORY_DESCRIPTOR_VERSION;
|
||||
|
||||
if (*memory_map_size < map_size)
|
||||
return EFI_BUFFER_TOO_SMALL;
|
||||
|
||||
|
|
Loading…
Reference in New Issue