# HG changeset patch # User Sheng Yang # Date 1253088149 -28800 # Node ID 86c908c45ac908767b6b6bdbd9e8d863b34a84a8 # Parent 183fa85d47d9411e6e21c4534d8e231feeac96a7 Reserved E820 for hybrid gnttab support diff --git a/tools/firmware/hvmloader/config.h b/tools/firmware/hvmloader/config.h --- a/tools/firmware/hvmloader/config.h +++ b/tools/firmware/hvmloader/config.h @@ -16,8 +16,12 @@ /* MMIO hole: Hardcoded defaults, which can be dynamically expanded. */ #define PCI_MEM_START 0xf0000000 -#define PCI_MEM_END 0xfc000000 +#define PCI_MEM_END 0xfbfe0000 extern unsigned long pci_mem_start, pci_mem_end; + +/* Reserve 128KB for grant table */ +#define GNTTAB_MEMBASE 0xfbfe0000 +#define GNTTAB_MEMSIZE 0x20000 /* We reserve 16MB for special BIOS mappings, etc. */ #define RESERVED_MEMBASE 0xfc000000 diff --git a/tools/firmware/hvmloader/hvmloader.c b/tools/firmware/hvmloader/hvmloader.c --- a/tools/firmware/hvmloader/hvmloader.c +++ b/tools/firmware/hvmloader/hvmloader.c @@ -602,6 +602,12 @@ e820[nr].type = E820_RAM; nr++; + /* Reserved for grant table */ + e820[nr].addr = GNTTAB_MEMBASE; + e820[nr].size = GNTTAB_MEMSIZE; + e820[nr].type = E820_RESERVED; + nr++; + /* * Explicitly reserve space for special pages. * This space starts at RESERVED_MEMBASE an extends to cover various