diff --git a/devicemodel/core/sw_load_common.c b/devicemodel/core/sw_load_common.c index 7e7b823cf..f4b7ce43b 100644 --- a/devicemodel/core/sw_load_common.c +++ b/devicemodel/core/sw_load_common.c @@ -56,9 +56,10 @@ static char bootargs[BOOT_ARG_LEN]; * 2: 0x100000 - lowmem RAM lowmem - 1MB * 3: lowmem - 0x80000000 (reserved) 2GB - lowmem * 4: 0x80000000 - 0x88000000 (reserved) 128MB - * 5: 0xE0000000 - 0x100000000 MCFG, MMIO 512MB - * 6: 0x100000000 - 0x140000000 64-bit PCI hole 1GB - * 7: 0x140000000 - highmem RAM highmem - 5GB + * 5: 0xDF000000 - 0xE0000000 (reserved) 16MB + * 6: 0xE0000000 - 0x100000000 MCFG, MMIO 512MB + * 7: 0x100000000 - 0x140000000 64-bit PCI hole 1GB + * 8: 0x140000000 - highmem RAM highmem - 5GB */ const struct e820_entry e820_default_entries[NUM_E820_ENTRIES] = { { /* 0 to video memory */ @@ -92,6 +93,13 @@ const struct e820_entry e820_default_entries[NUM_E820_ENTRIES] = { .type = E820_TYPE_RESERVED }, + { + /* reserve for GVT */ + .baseaddr = 0xDF000000, + .length = 0x1000000, + .type = E820_TYPE_RESERVED + }, + { /* ECFG_BASE to 4GB */ .baseaddr = PCI_EMUL_ECFG_BASE, .length = (4 * GB) - PCI_EMUL_ECFG_BASE, diff --git a/devicemodel/include/sw_load.h b/devicemodel/include/sw_load.h index 6e8dce7cb..746681d79 100644 --- a/devicemodel/include/sw_load.h +++ b/devicemodel/include/sw_load.h @@ -39,9 +39,9 @@ #define E820_TYPE_ACPI_NVS 4U /* EFI 10 */ #define E820_TYPE_UNUSABLE 5U /* EFI 8 */ -#define NUM_E820_ENTRIES 8 +#define NUM_E820_ENTRIES 9 #define LOWRAM_E820_ENTRY 2 -#define HIGHRAM_E820_ENTRY 7 +#define HIGHRAM_E820_ENTRY 8 /* Defines a single entry in an E820 memory map. */ struct e820_entry {