[BOOT:MM] Begin work on memory manager
This commit is contained in:
@@ -28,17 +28,18 @@ Abstract:
|
||||
#define BOOT_MACHINE_TYPE IMAGE_FILE_MACHINE_I386
|
||||
#endif
|
||||
|
||||
//
|
||||
// No address translation.
|
||||
//
|
||||
#define BOOT_TRANSLATION_TYPE 0
|
||||
|
||||
//
|
||||
// Use EFI page size.
|
||||
//
|
||||
#define PAGE_SIZE EFI_PAGE_SIZE
|
||||
#define PAGE_SHIFT EFI_PAGE_SHIFT
|
||||
|
||||
//
|
||||
// Address translation types.
|
||||
//
|
||||
#define BOOT_TRANSLATION_TYPE_NONE 0
|
||||
#define BOOT_TRANSLATION_TYPE_MAX 1
|
||||
|
||||
#define BOOT_INPUT_PARAMETERS_SIGNATURE 0x50504120544f4f42 /* "BOOT APP" */
|
||||
#define BOOT_INPUT_PARAMETERS_VERSION 2
|
||||
|
||||
@@ -122,6 +123,19 @@ typedef struct {
|
||||
ULONG Type;
|
||||
} BOOT_MEMORY_DESCRIPTOR, *PBOOT_MEMORY_DESCRIPTOR;
|
||||
|
||||
typedef enum {
|
||||
MDL_TYPE_PHYSICAL,
|
||||
MDL_TYPE_VIRTUAL
|
||||
} BOOT_MEMORY_DESCRIPTOR_LIST_TYPE;
|
||||
|
||||
typedef struct {
|
||||
LIST_ENTRY ListEntry;
|
||||
|
||||
PVOID Head;
|
||||
PVOID Current;
|
||||
BOOT_MEMORY_DESCRIPTOR_LIST_TYPE Type;
|
||||
} BOOT_MEMORY_DESCRIPTOR_LIST, *PBOOT_MEMORY_DESCRIPTOR_LIST;
|
||||
|
||||
#define BOOT_FIRMWARE_DATA_VERSION 2
|
||||
|
||||
typedef struct {
|
||||
@@ -240,6 +254,10 @@ typedef struct {
|
||||
};
|
||||
} BOOT_DEVICE, *PBOOT_DEVICE;
|
||||
|
||||
#define BCDE_DATA_FORMAT_MASK 0x0F000000
|
||||
|
||||
#define BCDE_DATA_FORMAT_DEVICE 1
|
||||
|
||||
typedef enum {
|
||||
BCDE_DATA_TYPE_APPLICATION_DEVICE = 0x11000001,
|
||||
BCDE_DATA_TYPE_APPLICATION_PATH = 0x22000002
|
||||
|
Reference in New Issue
Block a user