1 /* SPDX-License-Identifier: GPL-2.0+ */
3 * Copyright (C) 2019 Intel Corporation <www.intel.com>
6 #ifndef __SLIMBOOTLOADER_ARCH_H__
7 #define __SLIMBOOTLOADER_ARCH_H__
13 * A GUID to get MemoryMap info hob which is provided by Slim Bootloader
15 #define SBL_MEMORY_MAP_INFO_GUID \
16 EFI_GUID(0xa1ff7424, 0x7a1a, 0x478e, \
17 0xa9, 0xe4, 0x92, 0xf3, 0x57, 0xd1, 0x28, 0x32)
20 * A single entry of memory map information
22 * @addr: start address of a memory map entry
23 * @size: size of a memory map entry
24 * @type: usable:1, reserved:2, acpi:3, nvs:4, unusable:5
25 * @flag: only used in Slim Bootloader
26 * @rsvd: padding for alignment
28 struct sbl_memory_map_entry {
37 * This includes all memory map entries which is sorted based on physical start
38 * address, from low to high, and carved out reserved, acpi nvs, acpi reclaim
41 * @rev : revision of memory_map_info structure. currently 1.
42 * @rsvd : padding for alignment
43 * @count: the number of memory map entries
44 * @entry: array of all memory map entries
46 struct sbl_memory_map_info {
50 struct sbl_memory_map_entry entry[0];
53 #endif /* __SLIMBOOTLOADER_ARCH_H__ */