diff --git a/cmd/efi.c b/cmd/efi.c
index b3a3bf8..1558cb1 100644
--- a/cmd/efi.c
+++ b/cmd/efi.c
@@ -71,7 +71,19 @@
 	return diff < 0 ? -1 : diff > 0 ? 1 : 0;
 }
 
-void *efi_build_mem_table(struct efi_entry_memmap *map, int size, bool skip_bs)
+/**
+ * efi_build_mem_table() - make a sorted copy of the memory table
+ *
+ * @map:	Pointer to EFI memory map table
+ * @size:	Size of table in bytes
+ * @skip_bs:	True to skip boot-time memory and merge it with conventional
+ *		memory. This will significantly reduce the number of table
+ *		entries.
+ * Return:	pointer to the new table. It should be freed with free() by the
+ *		caller.
+ */
+static void *efi_build_mem_table(struct efi_entry_memmap *map, int size,
+				 bool skip_bs)
 {
 	struct efi_mem_desc *desc, *end, *base, *dest, *prev;
 	int count;
@@ -92,7 +104,13 @@
 	end = (struct efi_mem_desc *)((ulong)base + count * map->desc_size);
 	for (desc = base; desc < end; desc = efi_get_next_mem_desc(map, desc)) {
 		bool merge = true;
-		int type = desc->type;
+		u32 type = desc->type;
+
+		if (type >= EFI_MAX_MEMORY_TYPE) {
+			printf("Memory map contains invalid entry type %u\n",
+			       type);
+			continue;
+		}
 
 		if (skip_bs && is_boot_services(desc->type))
 			type = EFI_CONVENTIONAL_MEMORY;
@@ -119,7 +137,7 @@
 	}
 
 	/* Mark the end */
-	dest->type = EFI_TABLE_END;
+	dest->type = EFI_MAX_MEMORY_TYPE;
 
 	return base;
 }
@@ -138,7 +156,7 @@
 	/* Keep track of all the different attributes we have seen */
 	attr_seen_count = 0;
 	addr = 0;
-	for (upto = 0; desc->type != EFI_TABLE_END;
+	for (upto = 0; desc->type != EFI_MAX_MEMORY_TYPE;
 	     upto++, desc = efi_get_next_mem_desc(map, desc)) {
 		const char *name;
 		u64 size;
diff --git a/include/efi.h b/include/efi.h
index f986aad..5695273 100644
--- a/include/efi.h
+++ b/include/efi.h
@@ -180,7 +180,6 @@
 	EFI_PERSISTENT_MEMORY_TYPE,
 
 	EFI_MAX_MEMORY_TYPE,
-	EFI_TABLE_END,	/* For efi_build_mem_table() */
 };
 
 /* Attribute values */
@@ -481,17 +480,4 @@
  */
 int efi_info_get(enum efi_entry_t type, void **datap, int *sizep);
 
-/**
- * efi_build_mem_table() - make a sorted copy of the memory table
- *
- * @map:	Pointer to EFI memory map table
- * @size:	Size of table in bytes
- * @skip_bs:	True to skip boot-time memory and merge it with conventional
- *		memory. This will significantly reduce the number of table
- *		entries.
- * @return pointer to the new table. It should be freed with free() by the
- *	   caller
- */
-void *efi_build_mem_table(struct efi_entry_memmap *map, int size, bool skip_bs);
-
 #endif /* _LINUX_EFI_H */
