summaryrefslogtreecommitdiff
path: root/include/efi.h
diff options
context:
space:
mode:
authorHeinrich Schuchardt <heinrich.schuchardt@canonical.com>2021-08-17 15:52:16 +0300
committerHeinrich Schuchardt <heinrich.schuchardt@canonical.com>2021-08-17 18:24:08 +0300
commit3ced574530e13b12cec3dc9ef87f1a175fb76c83 (patch)
treef637e9fdc4778a4f72c2bb0743fab89089632253 /include/efi.h
parent7685d17b72bc4fee08ba669634f3dc3084af190d (diff)
downloadu-boot-3ced574530e13b12cec3dc9ef87f1a175fb76c83.tar.xz
efi_loader: use an enum for the memory allocation types
For type checking we need an enum. Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
Diffstat (limited to 'include/efi.h')
-rw-r--r--include/efi.h34
1 files changed, 28 insertions, 6 deletions
diff --git a/include/efi.h b/include/efi.h
index 6417a9b8c5..4eb573a280 100644
--- a/include/efi.h
+++ b/include/efi.h
@@ -125,6 +125,34 @@ struct efi_table_hdr {
u32 reserved;
};
+/* Allocation types for calls to boottime->allocate_pages*/
+/**
+ * enum efi_allocate_type - address restriction for memory allocation
+ */
+enum efi_allocate_type {
+ /**
+ * @EFI_ALLOCATE_ANY_PAGES:
+ * Allocate any block of sufficient size. Ignore memory address.
+ */
+ EFI_ALLOCATE_ANY_PAGES,
+ /**
+ * @EFI_ALLOCATE_MAX_ADDRESS:
+ * Allocate a memory block with an uppermost address less or equal
+ * to the indicated address.
+ */
+ EFI_ALLOCATE_MAX_ADDRESS,
+ /**
+ * @EFI_ALLOCATE_ADDRESS:
+ * Allocate a memory block starting at the indicatged adress.
+ */
+ EFI_ALLOCATE_ADDRESS,
+ /**
+ * @EFI_MAX_ALLOCATE_TYPE:
+ * Value use for range checking.
+ */
+ EFI_MAX_ALLOCATE_TYPE,
+};
+
/* Enumeration of memory types introduced in UEFI */
enum efi_mem_type {
EFI_RESERVED_MEMORY_TYPE,
@@ -224,12 +252,6 @@ struct efi_mem_desc {
#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
-#define EFI_ALLOCATE_ADDRESS 2
-#define EFI_MAX_ALLOCATE_TYPE 3
-
/* Types and defines for Time Services */
#define EFI_TIME_ADJUST_DAYLIGHT 0x1
#define EFI_TIME_IN_DAYLIGHT 0x2